! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
Wireless interface name hardcoded, Arch interface names different (connman?)
Status:
RESOLVED: FIXED
Product:
Xfce4-hardware-monitor-plugin
Component:
General

Comments

Description Kit 2015-05-03 05:57:20 CEST
I installed this on an Arch Linux system using connman to manage network interfaces. It is currently connected wirelessly and despite adding all network device types <Ethernet (first-third), Modem, Serial link, Wireless> in the plugin properties it does not detect any traffic. I will post back when I get a chance to test with a wired connection. Have you tested with wireless? Many thanks.
Comment 1 thread 2015-05-12 02:38:42 CEST
+1 to this! I just tried to get a wireless network graph on my Arch system, but found that I couldn't get any read. bmon shows me the traffic just fine. My wifi device registers as wlp4s0...
Comment 2 OmegaPhil 2015-05-12 18:59:29 CEST
I'm sorry, these emails had nothing mentioning my plugin so I thought it was general mailing list 'spam', I'll start looking into this now.
Comment 3 OmegaPhil 2015-05-12 19:39:11 CEST
Right, currently (I think in an aim to make configuration appear artificially simple?) network device paths are hardcoded - so 'Wireless' means 'wlan0', which is fine on my Debian Testing laptop.

Is wlp4s0 an Arch standard name? Is the 4 significant?

Kit: What is your wireless device name?
Comment 4 Kit 2015-05-13 18:55:39 CEST
Hi, sorry for the delay. I have 2 wireless adapters, the internal one is wlp4s0 and the USB one (running through ndiswrapper because there isn't a linux driver) is enp0s29f7u6. I believe the names are generated dynamically, I believe http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/ is relevant, however it doesn't specifically mention the wlp... scheme.

My internal wired adapter is enp5s0 but I haven't tested wired yet.

Relevant messages from dmesg:
[   16.314737] iwlwifi 0000:04:00.0 wlp4s0: renamed from wlan0
[   17.367544] ndiswrapper 8-6:1.0 enp0s29f7u6: renamed from wlan0
[   16.330843] tg3 0000:05:00.0 enp5s0: renamed from eth0

After reading the linked page I had a look in /lib/udev/rules.d/80-net-setup-link.rules but it doesn't look very helpful in detecting interfaces but I noticed /sys/class/net/ contains symlinked folders for all the devices available and only wireless interfaces have a wireless subfolder, e.g:

$ ls -l /sys/class/net/
total 0
lrwxrwxrwx 1 root root 0 May 13 18:11 enp0s29f7u6 -> ../../devices/pci0000:00/0000:00:1d.7/usb8/8-6/8-6:1.0/net/enp0s29f7u6
lrwxrwxrwx 1 root root 0 May 13 18:11 enp5s0 -> ../../devices/pci0000:00/0000:00:1c.2/0000:05:00.0/net/enp5s0
lrwxrwxrwx 1 root root 0 May 13 18:10 lo -> ../../devices/virtual/net/lo
lrwxrwxrwx 1 root root 0 May 13 18:11 wlp4s0 -> ../../devices/pci0000:00/0000:00:1c.1/0000:04:00.0/net/wlp4s0

$ ls -l /sys/class/net/wlp4s0/ | grep wireless
drwxr-xr-x 2 root root    0 May 13 18:45 wireless

There are a few workarounds for retaining the eth0/wlan0 naming scheme at the end of the linked document, however I haven't tested them yet.
Comment 5 OmegaPhil 2015-05-14 18:51:16 CEST
Thanks for the writeup - so basically its a better way to generate fixed device names, meaning the current way the plugin assumes things is obsolete. I'll knock up some 'advanced' settings which allow a user to set the full interface name for each device entry (the presence of those will remain hardcoded), and add the possibility of a second wireless device since you mentioned you had two (how extravagant!).
Comment 6 OmegaPhil 2015-05-20 22:52:49 CEST
I'm currently stalled on this as I'm trying to get an appropriate glade installation in order to edit the UI, but libtool is failing miserably to link one of the libraries, or something. If anyone is a libtool/autotools expert here, please speak up ;)
Comment 7 OmegaPhil 2015-06-21 15:56:57 CEST
To keep people aware, I have <finally> finished the long fight against C++ to get a local working version where interface names are fully decoupled from the types. So at the extreme, that makes 8 fully-configurable network interfaces to track, with type only being a suggestion.

I hope to push this soon (but not as a new version yet), testing is needed to move it beyond just Works For Me™.
Comment 8 OmegaPhil 2015-06-21 18:37:35 CEST
Right, this now works on my main machine and a laptop - please can you test the 'configurable-interface-names' branch: http://git.xfce.org/panel-plugins/xfce4-hardware-monitor-plugin/tree/?h=omegaphil%2Fconfigurable-interface-names

Official release-wise its going to be some time until v1.4.7 is released.
Comment 9 OmegaPhil 2015-06-22 22:09:01 CEST
To be specific, when you add a monitor or change a network load monitor, go to the Network tab and see the Advanced frame title - expand it to get at the interface name settings - edit them in the table, as soon as they save they affect all relevant monitors, you don't need to OK the change/add a new monitor to effect it.
Comment 10 OmegaPhil 2015-07-23 21:32:43 CEST
As I've had no feedback with this, I've killed the branch and it is part of master.
Comment 11 OmegaPhil 2015-08-25 22:56:05 CEST
Resolving unless demonstrated otherwise.

Bug #11881

Reported by:
Kit
Reported on: 2015-05-03
Last modified on: 2015-08-25

People

Assignee:
OmegaPhil
CC List:
1 user

Version

Version:
unspecified

Attachments

Additional information