Need help troubleshooting NIC (ethernet card) on Manjaro KDE

sudo nano /etc/NetworkManager/NetworkManager.conf

and put this in there:

[logging]
level=DEBUG

networkmanager.conf(5) - Linux man page

And restart the NetworkManager:

sudo systemctl restart NetworkManager

Also for the module, to increase kernel messages:

modinfo e100
sudo systemctl stop NetworkManager
sudo rmmod e100
sudo modprobe e100 debug=all
sudo systemctl start NetworkManager

The messages are here:

journalctl --dmesg --boot 0

(--follow if you need the logs of now)

I have being on and off trying to understand what were the function of each steps you told me to do but i don’t get a solid answer from search.

modinfo e100

You told me to run " $ modinfo e100 " … from my studies, “modinfo” is just a simple command to show info of each load/unload able module in kernel. So, “e100” must be one of those module/ driver for network, because

$ modinfo e100
filename:       /lib/modules/5.12.19-1-MANJARO/kernel/drivers/net/ethernet/intel/e100.ko.xz

Then you want me to stop network manager, because any adding or subtration of “drivers/ module” can’t be done when it is in use.
Then you “unload” the module using “$ rmmod”
Then you load the e100 module with additional parameter “debug=all”

sudo modprobe e100 debug=all

1st of all, i have read thru a couple of modprobe command website; no “debug=all” available under “modprobe” command.
2ndly, i have not able to find a clear explaination of “e100” module on internet

Can you please explain ?
Thank you.

Shame on me :smile: It was a bit late, but correct is:

sudo modprobe e100 debug=16

The parameters come from:

modinfo e100

:arrow_down:

parm:           debug:Debug level (0=none,...,16=all) (int)
parm:           eeprom_bad_csum_allow:Allow bad eeprom checksums (int)
parm:           use_io:Force use of i/o access mode (int)

What clear explanation do you think of?

Something like this? The kernel’s command-line parameters — The Linux Kernel documentation

I see… So “modinfo” does contribute some good data, i thought just for “fun” lol. :rofl:

I meant how do you know it is “e100” modules that is todo with ethernet driver ? which, one can change priority of logging related to the module ? I can’t even locate e100 using the command:

$ lsmod | grep e100
$ whereis e100       
e100:
$ whatis e100  
e100: nothing appropriate.
$ pacman -Q e100
error: package 'e100' was not found
$ find /lib/modules/$(uname -r) -type f -name '*.ko*' | more | grep e100
/lib/modules/5.12.19-1-MANJARO/kernel/drivers/net/ethernet/intel/e100.ko.xz
/lib/modules/5.12.19-1-MANJARO/kernel/drivers/net/ethernet/intel/e1000e/e1000e.ko.xz
/lib/modules/5.12.19-1-MANJARO/kernel/drivers/net/ethernet/intel/e1000/e1000.ko.xz
/lib/modules/5.12.19-1-MANJARO/kernel/drivers/misc/eeprom/ee1004.ko.xz

I mean what if next time i got similar issue and wanted to get more log of other problem such bluetooth , or wifi or display module ? How one know which module is doing what related ?

Because of your inxi output:


Here is a little trick:

sudo lspci -vvv -k -nn | sed -n "/Ethernet controller/,/Kernel modules/p"

It shrinks the output of lspci from line which contains “Ethernet controller” until the last line, which contains “Kernel modules”.

However… there you see pci devices in detail.

inxi is just a bit more compact:

inxi --network-advanced --admin --filter --width 80

Ok i try to keep it simple:

  1. You have a problem with your audio device. Check which module is loaded for this device:
sudo lspci -v -k | sed -n "/Audio device/,/Kernel modules/p"

Example output:

00:14.2 Audio device: Advanced Micro Devices, Inc. [AMD] FCH Azalia Controller (rev 01)
	Subsystem: ASUSTeK Computer Inc. Device 8445
	Flags: bus master, slow devsel, latency 32, IRQ 16
	Memory at fe100000 (64-bit, non-prefetchable) [size=16K]
	Capabilities: [50] Power Management version 2
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel
01:00.1 Audio device: NVIDIA Corporation GP107GL High Definition Audio Controller (rev a1)
	Subsystem: ZOTAC International (MCO) Ltd. Device 1454
	Flags: bus master, fast devsel, latency 0, IRQ 19
	Memory at fe080000 (32-bit, non-prefetchable) [size=16K]
	Capabilities: [60] Power Management version 3
	Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
	Capabilities: [78] Express Endpoint, MSI 00
	Capabilities: [100] Advanced Error Reporting
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel

:arrow_down:

Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel

So now you know which driver/module is used.

  1. Now check which parameter are available:
modinfo snd_hda_intel | grep parm
  1. Lets say you have a problem with the power save function. Here you can disable it:
# unload the module
sudo rmmod snd_hda_intel
# check if it is still up:
lsmod | grep snd_hda_intel
# then load the module with a specific parameter
sudo modprobe snd_hda_intel power_save=0

Keep sure you restart at least all applications which depends on it. Fo example pulseaudio:

systemctl restart --user pulseaudio.service

This is only temporary. If you need this permanent to load on boot, add file for example here:

sudo nano /etc/modprobe.d/intel-no-powersave.conf

and put there

option  snd_hda_intel power_save=0

or blacklist the module

blacklist snd_hda_intel

so that it will be blocked and maybe another driver which fits the chipID will be loaded automatically.

Every module has its own parameters, so here you have to check what is possible.

To locate the filename, use modinfo:

modinfo e100 | grep filename
2 Likes

This is the best, most comprehensive and friendly help i got since on manjaro forum.
Really appreciate your time and help.

Add in : lsmod & modinfo to find the dependencies
https://www.xmodulo.com/how-to-check-kernel-module-dependencies-on-linux.html

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.