You are not logged in.

#1 2014-08-27 12:27:12

tcq
Member
Registered: 2014-08-26
Posts: 6

[solved] install: dhcpcd needs IOMMU enabled on Gigabyte mainboard

First of all, a greeting to all people here in the forum and I hope my question doesn’t sound to dumb. I downloaded last week the latest release of the install image ( Current Release: 2014.08.01, Included Kernel: 3.15.7,  ISO Size: 559.0 MB) and tried to install it on my current rig. Sadly, I’m getting stuck all the time setting up the wired network connection. After trying lots of different attempts, I finally realised that I’m running low on options and decided to come asking for help here. Maybe I’m doing something fundamental wrong as exactly networking was always my weak point.

Here are the Basic information I’m getting from my router:
Lan:
router name: Speedport_Entry_1_03_000
IP address router: 192.168.2.1
subnet mask: 255.255.255.0
MAC adresse LAN: 88-03-55-F5-72-2F
DHCP-Server: ON
DHCP ON, settings:
start IP: 192.168.2.2
end IP: 192.168.2.24

public WAN-IP: 79.207.XXX.XXX
Gateway address: 87.186.XXX.XXX
primary DNS: 217.0.43.113
secondary DNS: 217.0.43.97


Following the beginner installation guide:

ping –c3 www.google.com
ping: unkown host www.google.com

Then I checked if I was able to ping the router.

ping  -c3 192.168.2.1
connect: Network is unreachable

check for network adapter:

ip link
2: enp3S0: <BROADCAST, MULTICAST, UP,LOWER_UP>  mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 94:de:80:72:1a:4c brd ff:ff:ff:ff:ff:ff 

ls /sys/class/net
enp3s0@ lo@


checked via
lscpi –v for the kernel module which turned out to be r8169
followed by a

dmesg | grep r8169
[2.723793] r8169 Gigabyte Ethernet driver 2.3LK-NAPI loaded
[2.723804] r8169 0000:03:00.0: can’t disable ASPM; OS doesen’t have ASPM control
[2.724186] r8169 0000:03:00.0: irq 72 for MSI/MSI-X
[2.725365] r8169 0000:03:00.0 eth0: RTL8168evl/8111evl at 0xffffc90000c6a000, 94:de:80:72:1a:4c, XID 0c900800 IRQ 72
[2.725369] r8169 0000:03:00.0 eth0:jumbo features [frames: 9200 bytes, tx checksumming: ko]
[117.339311] r8169 0000:03:00.0 enp3s0: link down
[117.339346] r8169 0000:03:00.0 enp3s0: link down
[118.907212] r8169 0000:03:00.0 enp3s0: link up

trying to get a IP through DHCP, forcing ipv4

dhcpcd -4 enp3s0
dhcpcd[557]: version 6.4.2 starting
dhcpcd[557]: DUID 00:01:00:01:1b:90:8d:b0:94:de:80:72:1a:4c
dhcpcd[557]: enp3s0: IAID 80:72:1a:4c
dhcpcd[557]: enp3s0: soliciting a DHCP lease
dhcpcd[557]: timed out
dhcpcd[557]: exited

Trying to give a static IP outside the DHCP IP addresses in the network.

systemctl stop dhcpcd.service
ip link set enp3s0 up 
ip addr add 192.168.2.25/24 dev enp3s0
ip route add default via 192.168.2.1

Then I changed etc/resolv.conf two times. Once with external name servers and onces with the router as DNS. In both cases, just added the google DNS to be on the safe side.

nano /etc/resolv.conf
nameserver 217.0.43.113
nameserver 217.0.43.97
nameserver 8.8.8.8
search example.com

tried to ping the router, but received no connection because the host is unreachable.
ping –c3 192.168.2.1

nano /etc/resolv.conf
nameserver 192.168.2.1
nameserver 8.8.8.8
search example.com

Pinged again and again 100% packet loss, but this time I did not receive the error that the host is unreachable.

As the network connection was still not functional I changed, according to the beginners guide to the network configuration page..
But here I couldn’t find anything that seemed to work in my case. I tried to run a static connection over dhcpcd but the following ping to the router didn’t return anything.

dhcpcd -4 –S ip_address=192.168.2.25/24 \
-S routers=192.168.2.1 \
-S domain_name_servers=192.168.2.1\
enp3s0
dhcpcd[1335]: version 6.4.2 starting
dhcpcd[1335]: DUID 00:01:00:01:1b:90:8d:b0:94:de:80:72:1a:4c
dhcpcd[1335]: enp3s0: IAID 80:72:1a:4c
dhcpcd[1335]: enp3s0: using static address 192.168.2.25/24
dhcpcd[1335]: enp3s0: adding route to 192.168.2.0/24
dhcpcd[1335]: enp3s0: adding default route via 192.168.2.1
dhcpcd[1335]: forked to background, child pid 1427

Then I tried to work with netctl but this didn’t provide success either. I copied the profiles for either static IP or DHCP address and adjusted them accordingly (e.g here.)

What I assume is that there might be any problem between the connections from my PC to the router, but I couldn’t figure out anything. I tested the LAN cable on another PC and there was no problem with it at all. Can it be that the router is refusing my machine due to me unknown reasons or am I doing something totally wrong?

Last edited by tcq (2014-09-01 17:19:48)

Offline

#2 2014-08-27 23:57:47

oktorok
Member
From: San Francisco, Ca
Registered: 2014-06-18
Posts: 70

Re: [solved] install: dhcpcd needs IOMMU enabled on Gigabyte mainboard

Hi tcq,

As a workaround, I suggest giving connman a try as it will automatically handle wired connections.  If your connection still fails, you will get a different set of log information out of connman via journalctl which may be helpful.  Just make sure that you stop/disable your netctl services before starting/enabling your connman service, if the two run at the same time your connection will fail to establish.  I understand this isn't a solution in the sense of coming to an understanding of the true nature of your problem and then correcting it, but if you are banging your head against the wall and just need to get online (and in lieu of other smarter-than-me people coming to your aid), you might want to try it out.  Here's the wiki.

Last edited by oktorok (2014-08-27 23:59:22)

Offline

#3 2014-08-28 01:54:01

midixinga
Member
Registered: 2014-01-18
Posts: 187

Re: [solved] install: dhcpcd needs IOMMU enabled on Gigabyte mainboard

your cable is ok ?
your router port is ok ?

could you try another computer with this cable ?


[Desktop | Intel i4570 CPU |  Internal Graphics HD4600 |  ASRock H87M Pro4 | 8 GB RAM | UEFI/GPT | Samsung SSD 850 | Single-Boot Arch 64 Bit | sytemd-boot | KDE 4 xfce Plasma5]

Offline

#4 2014-08-28 07:24:56

tcq
Member
Registered: 2014-08-26
Posts: 6

Re: [solved] install: dhcpcd needs IOMMU enabled on Gigabyte mainboard

Thank you guys for the fast replies.

@oktorok:  I will give it a try with conman, thank you for the suggestion. I will come back with the results as soon as I had time to test it.
@midixinga: I checked the cable on another machine and it worked. Right now, I'm writing this post from the PC in question via a debian live cd and I'm using the same cable and router port configuration as during my installation tries. Thus, I conclude the problem need to be somewhere in my arch linux settings and it's communication with my router.

Offline

#5 2014-08-28 10:24:14

midixinga
Member
Registered: 2014-01-18
Posts: 187

Re: [solved] install: dhcpcd needs IOMMU enabled on Gigabyte mainboard

it seems (google) there are a lot of problems with card; please do

lspci  -vv

and

lsmod

Edit: Maybe you need a module for 8168 ? https://www.archlinux.org/packages/?sor … =&flagged=

Edit2: and there is also a WIKI: https://wiki.archlinux.org/index.php/Ne … OL_problem

Last edited by midixinga (2014-08-28 11:27:01)


[Desktop | Intel i4570 CPU |  Internal Graphics HD4600 |  ASRock H87M Pro4 | 8 GB RAM | UEFI/GPT | Samsung SSD 850 | Single-Boot Arch 64 Bit | sytemd-boot | KDE 4 xfce Plasma5]

Offline

#6 2014-08-29 14:24:18

tcq
Member
Registered: 2014-08-26
Posts: 6

Re: [solved] install: dhcpcd needs IOMMU enabled on Gigabyte mainboard

@oktorok: Sadly, it seems like that coonman isn't part of the install CD and thus I can't test it.
@midixinga:

lspci -vvd 10ec:8168

See the output in the following picture:
lspci_vvd_10ec_8168sijig.jpeg

lsmod
r8169 59191 0

As you can see in the first post and in the picture linked in this post, the module was loaded with r8169 by default.
Trying to load the module r8168, resulted in the following error.

modprobe r8169
modprobe: FATAL: Module r8168 not found.

About the wiki link from your second edit:
Here it's about bringing up the network card, which mine is already.

Any other ideas of, how to pin down the problem? My guess is, that there is something wrong with archlinux and it's communication with the router as a debian live CD works out of the box with the same cable/router port settings. Maybe you can get more information out of the lspci picture I uploaded.
I might not have time to work on this problem much over the weekend, but I would be happy to check all suggestions you guys can provide me with in hope to fix this problem and to have a guideline for other users, should they encounter the same problem smile

Last edited by tcq (2014-08-29 15:02:23)

Offline

#7 2014-08-29 14:46:02

midixinga
Member
Registered: 2014-01-18
Posts: 187

Re: [solved] install: dhcpcd needs IOMMU enabled on Gigabyte mainboard

tcq wrote:

@midixinga:

As you can see in the first post and in the picture linked in this post, the module was loaded with r8169 by default.
Trying to load the module r8168, resulted in the following error.

modprobe r8169
modprobe: FATAL: Module r8168 not found.

I've also no more ideas, but did you really install r8168 and blacklisted r8169?

# pacman -S r8168
resolving dependencies...
looking for inter-conflicts...

Packages (1): r8168-8.038.00-10

Total Installed Size:   0.11 MiB

:: Proceed with installation? [Y/n]
(1/1) checking keys in keyring                                [#################################] 100%
(1/1) checking package integrity                              [#################################] 100%
(1/1) loading package files                                   [#################################] 100%
(1/1) checking for file conflicts                             [#################################] 100%
(1/1) checking available disk space                           [#################################] 100%
(1/1) installing r8168                                        [#################################] 100%
>>> The module r8168 conflicts with r8169. You can blacklist it with:
>>>  `echo "blacklist r8169" > /etc/modprobe.d/r8169_blacklist.conf`

[Desktop | Intel i4570 CPU |  Internal Graphics HD4600 |  ASRock H87M Pro4 | 8 GB RAM | UEFI/GPT | Samsung SSD 850 | Single-Boot Arch 64 Bit | sytemd-boot | KDE 4 xfce Plasma5]

Offline

#8 2014-08-29 15:04:44

tcq
Member
Registered: 2014-08-26
Posts: 6

Re: [solved] install: dhcpcd needs IOMMU enabled on Gigabyte mainboard

Thanks for the fast reply. My problem is that I can't even use pacman as I don't have any connection to a database where I could receive this module. So if it isn't on the installation disk, I can't use it.

But I got a new development now. I just kept on trying to get a connection via dhcpcd without static IP and I got now once out of 10 tries the following output:

dhcpcd enp3s0
dhcpcd[1517]: version 6.4.2 starting
dhcpcd[1517: DUID 00:01:00:01:1b:90:8d:b0:94:de:80:72:1a:4c
dhcpcd[1517]: enp3s0: IAID 80:72:1a:4c
dhcpcd[1517]: enp3s0: soliciting an IPv6 router
dhcpcd[1517]: enp3s0: soliciting a DHCP lease
dhcpcd[1517]: enp3s0: no IPv6 Routers available
dhcpcd[1517]: enp3s0: offered 192.168.2.6 from 192.168.2.1
dhcpcd[1517]: timed out
dhcpcd[1517]: exited

I don't have the slightest ID what happened here and how it turned out. Directly afterwards I tried it with an increased timeout

dhcpcd -t 180 enp3s0

, but nothing worked ... It did not even jump from the IPv6 route into the IPv4 route. Just exited with a time out.
Forcing it into the IPv4 route by itself provided (dhcpdcd -4 enp3s0) no result. When running it with just the device (enp3s0), it just timed out again without any successful negotiation with the router.

Then I went into /etc/dhcpcd.conf and replaced the "noipv4ll" section with "noipv6rs" and now I'm getting an IP address, but this one isn't in the range of the DHCP server.

dhcpcd enp3s0
dhcpcd[1865]: version 6.4.2 starting
dhcpcd[1865]: DUID 00:01:00:01:1b:90:8d:b0:94:de:80:72:1a:4c
dhcpcd[1865]: enp3s0: IAID 80:72:1a:4c
dhcpcd[1865]: enp3s0: using IPv4LL address 169.254.67.98
dhcpcd[1865]: enp3s0: adding route to 169.254.0.0/16 
dhcpcd[1865]: forked to background, child pid 1952

Last edited by tcq (2014-08-29 15:06:16)

Offline

#9 2014-08-29 15:16:11

midixinga
Member
Registered: 2014-01-18
Posts: 187

Re: [solved] install: dhcpcd needs IOMMU enabled on Gigabyte mainboard

tcq wrote:

Thanks for the fast reply. My problem is that I can't even use pacman as I don't have any connection to a database where I could receive this module. So if it isn't on the installation disk, I can't use it.

yeah, maybe someone else can help you, how to install drivers offline; I never needed it for myself

But I got a new development now. I just kept on trying to get a connection via dhcpcd without static IP and I got now once out of 10 tries the following output:

dhcpcd enp3s0
dhcpcd[1517]: version 6.4.2 starting
dhcpcd[1517: DUID 00:01:00:01:1b:90:8d:b0:94:de:80:72:1a:4c
dhcpcd[1517]: enp3s0: IAID 80:72:1a:4c
dhcpcd[1517]: enp3s0: soliciting an IPv6 router
dhcpcd[1517]: enp3s0: soliciting a DHCP lease
dhcpcd[1517]: enp3s0: no IPv6 Routers available
dhcpcd[1517]: enp3s0: offered 192.168.2.6 from 192.168.2.1
dhcpcd[1517]: timed out
dhcpcd[1517]: exited

strange

Then I went into /etc/dhcpcd.conf and replaced the "noipv4ll" section with "noipv6rs" and now I'm getting an IP address, but this one isn't in the range of the DHCP server.

dhcpcd enp3s0
dhcpcd[1865]: version 6.4.2 starting
dhcpcd[1865]: DUID 00:01:00:01:1b:90:8d:b0:94:de:80:72:1a:4c
dhcpcd[1865]: enp3s0: IAID 80:72:1a:4c
dhcpcd[1865]: enp3s0: using IPv4LL address 169.254.67.98
dhcpcd[1865]: enp3s0: adding route to 169.254.0.0/16 
dhcpcd[1865]: forked to background, child pid 1952

Wikipedia: The block 169.254.0.0/16 is reserved for this purpose, with the exception of the first and the last /24 subnets in the range. If a host on an IEEE 802 (ethernet) network cannot obtain a network address via DHCP, an address from 169.254.1.0 to 169.254.254.255 may be assigned pseudorandomly. The standard prescribes that address collisions must be handled gracefully.


[Desktop | Intel i4570 CPU |  Internal Graphics HD4600 |  ASRock H87M Pro4 | 8 GB RAM | UEFI/GPT | Samsung SSD 850 | Single-Boot Arch 64 Bit | sytemd-boot | KDE 4 xfce Plasma5]

Offline

#10 2014-08-29 15:17:57

tcq
Member
Registered: 2014-08-26
Posts: 6

Re: [solved] install: dhcpcd needs IOMMU enabled on Gigabyte mainboard

midixinga wrote:

Wikipedia: The block 169.254.0.0/16 is reserved for this purpose, with the exception of the first and the last /24 subnets in the range. If a host on an IEEE 802 (ethernet) network cannot obtain a network address via DHCP, an address from 169.254.1.0 to 169.254.254.255 may be assigned pseudorandomly. The standard prescribes that address collisions must be handled gracefully.

Thank you very much for this one. I will keep on digging and eventually I will out what is wrong. At least I got a few new hints now.

Offline

#11 2014-08-29 15:29:11

midixinga
Member
Registered: 2014-01-18
Posts: 187

Re: [solved] install: dhcpcd needs IOMMU enabled on Gigabyte mainboard


[Desktop | Intel i4570 CPU |  Internal Graphics HD4600 |  ASRock H87M Pro4 | 8 GB RAM | UEFI/GPT | Samsung SSD 850 | Single-Boot Arch 64 Bit | sytemd-boot | KDE 4 xfce Plasma5]

Offline

#12 2014-09-01 17:15:23

tcq
Member
Registered: 2014-08-26
Posts: 6

Re: [solved] install: dhcpcd needs IOMMU enabled on Gigabyte mainboard

midixinga wrote:

From there, the following solution works.

teekay wrote:

You need to enable IOMMU in the BIOS of the Gigabyte board. I bought a 990FXA-UD5 last week and went through the same hell.

Afterwards uninstall r8168 and use the standard r8169 in-kernel one, it works fine.

Mine is a 970A-DS3 from Gigabyte and it works, after enabling IOMMU in the BIOS, out of the box. I would have never figured this out by myself. So much thanks for the digging midixinga and teekay for showing this solution!!!

I changed the thread topic accordingly to solved and gave it a little bit more meaningful name for future users searching for a similar problem.

Offline

#13 2014-09-01 23:29:35

Buddlespit
Member
From: Chesapeake, Va.
Registered: 2014-02-07
Posts: 444

Re: [solved] install: dhcpcd needs IOMMU enabled on Gigabyte mainboard

Now you're going to have problems with USB3, or you'll have long boots, with page faults showing up. If needed, you can add 'iommu=soft' (at a minimum) to your kernel command line. I have the Gigabyte GA-990FXA-UD3 and my kernel boot line looks like this:"rw root=UUID=54c26476-1afb-4137-ad77-57a647b449a4 rootfstype=ext4 quiet nosplash iommu=pt iommu=1 iommu=memaper iommu=noagp iommu=noaperture add_efi_memmap" and I have IOMMU turned on in the EFI firmware.
Before anyone starts on me about the amount of 'iommu=' I have in my boot line, I also use my USB3, I'm running dual GTX550ti's with dual monitors and I have a test copy of Arch running in a VM (still waiting for KDE5 to become stable), all of which are controlled by the IOMMU


AMD Ryzen 7 1700X | Asus PRIME X370-A | GeForce GTX 980 Ti | 16G Ram | KDE Plasma | Zen Kernel
Until linuxcounter.com closed, I was registered linux user #560427

Offline

Board footer

Powered by FluxBB