LinuxQuestions.org
Latest LQ Deal: Latest LQ Deals
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 06-10-2022, 11:52 PM   #1
argeloos
Member
 
Registered: Aug 2013
Location: Nederland
Distribution: slackware
Posts: 30

Rep: Reputation: Disabled
driver r8169 for Ethernet card does not load in Slackware 14.2


I'm moving my stuff to a new computer. I'm running both Slackware 15 but also 14.2 (I have my reasons).

14.2 does not see my ethernet card, nor seem I able to modprobe the driver.

Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 (rev 15)

Quote:
Settings for eth0:
Cannot get device settings: No such device
Cannot get wake-on-lan settings: No such device
Cannot get message level: No such device
Cannot get link status: No such device
No data available

Quote:
root::realtek# depmod
root::realtek# modprobe -v r8169.ko
modprobe: FATAL: Module r8169.ko not found in directory /lib/modules/4.4.157
root::realtek# uname -r
4.4.157
root::realtek# ls /lib/modules/4.4.157/kernel/drivers/net/ethernet/realtek/r8169.ko
/lib/modules/4.4.157/kernel/drivers/net/ethernet/realtek/r8169.ko
(1) I assume that the driver is out of date (old computer has same ethernet card, but rev. 02)?

I was thinking, recompile the driver, but I can't find the source for the package kernel-modules (in current or 15).

Is my assumption (1) correct, or might there be another problem?

How do I proceed?

Thanks.
 
Old 06-11-2022, 06:01 AM   #2
henca
Member
 
Registered: Aug 2007
Location: Linköping, Sweden
Distribution: Slackware
Posts: 974

Rep: Reputation: 663Reputation: 663Reputation: 663Reputation: 663Reputation: 663Reputation: 663
I have no experience from that card, but during the years I have seen intel e1000e cards which requires a driver newer than the one shipped with the kernel. At those occasions I have been able to download the source of the driver from intel.com and compile a newer version of the kernel module.

The source of the kernel modules are part of the linux kernel sources. If you have done a full install you probably have it as:

/usr/src/linux/drivers/net/ethernet/realtek/r8169.c

If you are really lucky, it might be possible to identify some trivial additions needed to make the older r8169.c work with your newer card by comparing to the newer kernels r8169.c.

regards Henrik
 
Old 06-11-2022, 06:55 AM   #3
hazel
LQ Guru
 
Registered: Mar 2016
Location: Harrow, UK
Distribution: LFS, AntiX, Slackware
Posts: 7,597
Blog Entries: 19

Rep: Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455
My machine uses a card with the same driver. I have used it in both Slackware-14 and Slackware-15 and have had no problems with it.

Last edited by hazel; 06-11-2022 at 06:57 AM.
 
Old 06-11-2022, 11:20 AM   #4
argeloos
Member
 
Registered: Aug 2013
Location: Nederland
Distribution: slackware
Posts: 30

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by hazel View Post
My machine uses a card with the same driver. I have used it in both Slackware-14 and Slackware-15 and have had no problems with it.
Yeah. I've got this Ethernet card both in my old and my new computer. The only difference is the rev(ision) part, rev 02 in the old one, rev 15 in the new one. This makes me suspect that that is the reason my Slackware 14.2 doesn't load the driver in the new computer, while Slackware 15 does. Maybe yours is has a lower revision number?

Quote:
root# lspci | grep -i ethernet
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
If the driver should be fine for rev 15, what other problem can I look for to fix?
 
1 members found this post helpful.
Old 06-11-2022, 11:23 AM   #5
argeloos
Member
 
Registered: Aug 2013
Location: Nederland
Distribution: slackware
Posts: 30

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by henca View Post
I have no experience from that card, but during the years I have seen intel e1000e cards which requires a driver newer than the one shipped with the kernel. At those occasions I have been able to download the source of the driver from intel.com and compile a newer version of the kernel module.

The source of the kernel modules are part of the linux kernel sources. If you have done a full install you probably have it as:

/usr/src/linux/drivers/net/ethernet/realtek/r8169.c

If you are really lucky, it might be possible to identify some trivial additions needed to make the older r8169.c work with your newer card by comparing to the newer kernels r8169.c.

regards Henrik
Interesting. I will look into that, perhaps tomorrow, at the latest Monday (which is my day off). Thanks.
 
Old 06-11-2022, 11:31 AM   #6
hazel
LQ Guru
 
Registered: Mar 2016
Location: Harrow, UK
Distribution: LFS, AntiX, Slackware
Posts: 7,597
Blog Entries: 19

Rep: Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455
Mine has rev(0c) in slackware-15. No idea what the old one was. I'd have to boot slackware-14.2 and find out.
 
Old 06-11-2022, 11:57 AM   #7
business_kid
LQ Guru
 
Registered: Jan 2006
Location: Ireland
Distribution: Slackware, Slarm64 & Android
Posts: 16,338

Rep: Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331
It could be the card itself, or firmware. The source code is in the kernel source. The network hardware is probably identical between the Realtek 8111, 8168, & 8411 parts that use this r8169.ko driver. It probably comes as a precompiled chunk of code to place silicon in the nether regions of some ASIC, anyhow.

4.4.19 (original 14.2 kernel) ran this, as did 4.4.94(?) some level of update. I never went to 4.4.157, I went to current. My old box dates from 2012 and ran fine on 14.2, various current versions, & 15.0.

I gather yours worked, but has stopped working? Make sure the hardware works under some software. Then replace your 14.2 setup bit by bit. BTW, there's nothing to stop you putting 15.0 firmware in the 14.2 box to try it.
 
Old 06-12-2022, 01:39 AM   #8
argeloos
Member
 
Registered: Aug 2013
Location: Nederland
Distribution: slackware
Posts: 30

Original Poster
Rep: Reputation: Disabled
So, answering the DHCP question with yes in setup has worked automatically for me for so long that I have been put to sleep apparently. When my network did not come up I did `ifconfig` (with no arguments) I saw only loopback. Also, `rc.inet1 restart` did nothing. Then I did `ethtool eth0` and saw that my ethernet card was not doing anything either. And then I did a bunch of other stuff, which was wrong, I should have continued with the basic stuff.

Quote:
ifconfig -a display all interfaces which are currently available, even if down

Quote:
ifconfig -a
eth1: flags=4098<BROADCAST,MULTICAST> mtu 1500
ether f0:2f:74:85:32:dd txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
For reasons I don't know (but am curious about) I've got an eth1 instead of an eth0, even though I've got only one ethernet card.

I changed eht0 to eht1 in rc.inet1.conf and am currently online.

I will mark this thread as solved when I'm sure eth1 will keep coming up.

I'm curious, why would the system assign eth1 instead of eth0?

Last edited by argeloos; 06-12-2022 at 01:40 AM.
 
Old 06-12-2022, 02:57 AM   #9
ctrlaltca
Member
 
Registered: May 2019
Location: Italy
Distribution: Slackware
Posts: 324

Rep: Reputation: 361Reputation: 361Reputation: 361Reputation: 361
Probably you previously had another card on that pc that got assigned eth0.
These rules are saved in the file /etc/udev/rules.d/70-persistent-net.rules
You can just wipe the file, reboot and the current card will become eth0.
 
2 members found this post helpful.
Old 06-12-2022, 02:58 AM   #10
chris.willing
Member
 
Registered: Jun 2014
Location: Brisbane, Australia
Distribution: Slackware,LFS
Posts: 916

Rep: Reputation: 619Reputation: 619Reputation: 619Reputation: 619Reputation: 619Reputation: 619
The file:
/etc/udev/rules.d/70-persistent-net.rules
assigns a new "eth*" label whenever the system perceives a new network interface. It assigns eth0 to the first card it ever knows about. Later, if you add a card or change system to a new machine etc., whatever new network card is discovered is assigned eth1.

If you're happy with using eth1, just leave everything as is. If it makes you feel better to use eth0, edit that file (swap eth0 & eth1 assignments) and reboot to use eth0.

chris

edit: or do as @ctrlaltca suggests
 
1 members found this post helpful.
Old 06-12-2022, 04:16 AM   #11
business_kid
LQ Guru
 
Registered: Jan 2006
Location: Ireland
Distribution: Slackware, Slarm64 & Android
Posts: 16,338

Rep: Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331Reputation: 2331
FWIW, I reliably get eth1 as well, and there's no other card here. But I did the absolute minimum install for UEFI & elilo. Then I resync'ed over a backup of my old box. I'm not bothered chasing why it's eth1 and not eth0. It's not a fault, it's a peculiarity. I presume eth0 is the nic in the other box. Life is too short for that sort of thing.
 
Old 06-12-2022, 05:10 AM   #12
rkelsen
Senior Member
 
Registered: Sep 2004
Distribution: slackware
Posts: 4,457
Blog Entries: 7

Rep: Reputation: 2560Reputation: 2560Reputation: 2560Reputation: 2560Reputation: 2560Reputation: 2560Reputation: 2560Reputation: 2560Reputation: 2560Reputation: 2560Reputation: 2560
Support for RealTek cards can be flaky. I had issues with an onboard chip in early 5.x versions of Linux.

You can get a working driver for it here: https://www.realtek.com/en/component...press-software
 
3 members found this post helpful.
Old 06-12-2022, 11:00 AM   #13
argeloos
Member
 
Registered: Aug 2013
Location: Nederland
Distribution: slackware
Posts: 30

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by ctrlaltca View Post
Probably you previously had another card on that pc that got assigned eth0.
These rules are saved in the file /etc/udev/rules.d/70-persistent-net.rules
You can just wipe the file, reboot and the current card will become eth0.
Quote:
Originally Posted by chris.willing View Post
The file:
/etc/udev/rules.d/70-persistent-net.rules
assigns a new "eth*" label whenever the system perceives a new network interface. It assigns eth0 to the first card it ever knows about. Later, if you add a card or change system to a new machine etc., whatever new network card is discovered is assigned eth1.

If you're happy with using eth1, just leave everything as is. If it makes you feel better to use eth0, edit that file (swap eth0 & eth1 assignments) and reboot to use eth0.

chris

edit: or do as @ctrlaltca suggests
That makes a lot of sense.

Thanks everybody.
 
Old 06-17-2022, 03:14 AM   #14
FlinchX
Member
 
Registered: Nov 2017
Distribution: Slackware Linux
Posts: 666

Rep: Reputation: Disabled
Code:
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 02)
04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)
These are mine. r8169 didn't work for me either, in both 14.2 and 15.0. But r8168 did the job in 14.2 and works fine in 15.0 as well. You can get it from slackbuilds.org
 
2 members found this post helpful.
Old 06-17-2022, 04:38 AM   #15
argeloos
Member
 
Registered: Aug 2013
Location: Nederland
Distribution: slackware
Posts: 30

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by FlinchX View Post
Code:
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 02)
04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)
These are mine. r8169 didn't work for me either, in both 14.2 and 15.0. But r8168 did the job in 14.2 and works fine in 15.0 as well. You can get it from slackbuilds.org
That is really interesting. While I marked this thread as solved because I failed to use eth1 instead of eth0, I have some continuing problems my network, both in 14.2 and 15. In 14.2 a few times I lost connection completely and only a reboot could solve it. In 15 one time I had only a ipv4 connection, ipv6 simply did not come up.

So I will check r8168 out, thanks.
 
1 members found this post helpful.
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] Realtek RTL8111/8168/8411 Ethernet Controller - r8168 driver install, r8169 driver doesn't work pepperslq Linux - Hardware 4 11-12-2018 06:18 AM
Drivers for Ethernet Realtek RTL8111/8168/8411 (r8169) ehure Linux - Hardware 9 08-10-2016 10:45 AM
r8169.ko driver automatically activated, card detected but link is down arani Linux - Networking 1 02-14-2008 12:03 PM
how to install realtek ethernet driver ' r8169-6.004.00.tar.bz' on HCL 965,dualcore rmkrishna2 Linux - Networking 1 12-08-2007 02:15 AM
Compiling r8169.c network card driver on Alpha... Minuteman Linux - Hardware 1 04-03-2004 06:59 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 06:00 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration