Gentoo Archives: gentoo-user

From: Mick <michaelkintzios@×××××.com>
To: Gentoo User <gentoo-user@l.g.o>
Subject: Re: [gentoo-user] Udev 200 : dhcpcd problem + solution
Date: Mon, 01 Apr 2013 09:03:25
Message-Id: 201304011003.05845.michaelkintzios@gmail.com
In Reply to: [gentoo-user] Udev 200 : dhcpcd problem + solution by Philip Webb
1 On Monday 01 Apr 2013 02:54:08 Philip Webb wrote:
2 > I've spent a lot of today trying to fix a glitch in starting 'dhcpcd'
3 > after upgrading to udev-200 ; I outlined it in a msg to gentoo-dev .
4 >
5 > When I tried to start my I/net connection, I got this :
6 >
7 > root:501 ~> dhcpcd
8 > dhcpcd[831]: version 5.6.7 starting
9 > ... [delay]
10 > ^C
11 > ... [long delay]
12 > dhcpcd[831]: no interfaces have a carrier
13 > dhcpcd[831]: forked to background, child pid 857
14 >
15 > So having killed it, I restarted & had no problem :
16 >
17 > root:502 ~> dhcpcd
18 > dhcpcd[866]: version 5.6.7 starting
19 > dhcpcd[866]: enp5s0: sending IPv6 Router Solicitation
20 > dhcpcd[866]: enp5s0: rebinding lease of 192.168.1.2
21 > dhcpcd[866]: enp5s0: acknowledged 192.168.1.2 from 192.168.1.1
22 > dhcpcd[866]: enp5s0: checking for 192.168.1.2
23 > dhcpcd[866]: enp5s0: sending IPv6 Router Solicitation
24 > dhcpcd[866]: enp5s0: leased 192.168.1.2 for 86400 seconds
25 > dhcpcd[866]: forked to background, child pid 884
26 >
27 > Looking at /var/log/syslog , I saw :
28 >
29 > 13:11:16 dhcpcd[831]: version 5.6.7 starting
30 > 13:12:16 klogd: r8169 0000:05:00.0: enp5s0: unable to load firmware patch
31 > rtl_nic/rtl8168e-3.fw (-2) 13:12:16 klogd: r8169 0000:05:00.0: enp5s0:
32 > link down
33 > 13:12:16 klogd: r8169 0000:05:00.0: enp5s0: link down
34 > 13:12:16 klogd: IPv6: ADDRCONF(NETDEV_UP): enp5s0: link is not ready
35 > 13:12:17 dhcpcd[831]: no interfaces have a carrier
36 > 13:12:17 dhcpcd[831]: forked to background, child pid 857
37 > 13:12:17 dhcpcd[857]: received SIGINT, stopping
38 > 13:12:17 dhcpcd[857]: enp5s0: removing interface
39 > 13:12:18 klogd: r8169 0000:05:00.0: enp5s0: link up
40 > 13:12:18 klogd: IPv6: ADDRCONF(NETDEV_CHANGE): enp5s0: link becomes ready
41 > 13:12:34 dhcpcd[866]: version 5.6.7 starting
42 > 13:12:34 dhcpcd[866]: enp5s0: sending IPv6 Router Solicitation
43 > 13:12:34 dhcpcd[866]: enp5s0: rebinding lease of 192.168.1.2
44 > 13:12:34 dhcpcd[866]: enp5s0: acknowledged 192.168.1.2 from 192.168.1.1
45 > 13:12:34 dhcpcd[866]: enp5s0: checking for 192.168.1.2
46 > 13:12:38 dhcpcd[866]: enp5s0: sending IPv6 Router Solicitation
47 > 13:12:39 dhcpcd[866]: enp5s0: leased 192.168.1.2 for 86400 seconds
48 > 13:12:39 dhcpcd[866]: forked to background, child pid 884
49 >
50 > It seems that the new set-up with the device name created by the kernel
51 > requires the firmware to be built into the kernel.
52 > This is not mentioned in the recent news item.
53 >
54 > Google led to a Gentoo Forum thread which was unusually helpful (grin):
55 >
56 > http://forums.gentoo.org/viewtopic-t-899002-start-0.html
57 >
58 > This suggested the lines
59 >
60 > CONFIG_PREVENT_FIRMWARE_BUILD=y [NB this is incorrect]
61 > CONFIG_FIRMWARE_IN_KERNEL=y
62 > CONFIG_EXTRA_FIRMWARE="rtl8168e-2.fw" [NB I needed '-3']
63 > CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware"
64 >
65 > I was using kernel 3.5.3 , so I updated to 3.8.5 & configured it :
66 > I had to change the 1st line to 'n' -- mb a typo in the original msg --
67 > & to change .config manually to add '/lib/' before 'firmware',
68 > which 'make menuconfig' insisted on using without allowing editing.
69 > The compile command is
70 >
71 > make && make firmware_install && make modules_install
72 >
73 > Once the kernel was compiled + installed & I had rebooted, I got :
74 >
75 > root:501 ~> dhcpcd
76 > dhcpcd[834]: version 5.6.7 starting
77 > dhcpcd[834]: no interfaces have a carrier
78 > dhcpcd[834]: forked to background, child pid 846
79 >
80 > & despite the 2nd line of output, the connection had been established.
81 >
82 > 'syslog' now reads :
83 >
84 > dhcpcd[834]: version 5.6.7 starting
85 > klogd: r8169 0000:05:00.0 enp5s0: link down
86 > klogd: IPv6: ADDRCONF(NETDEV_UP): enp5s0: link is not ready
87 > klogd: r8169 0000:05:00.0 enp5s0: link down
88 > dhcpcd[834]: no interfaces have a carrier
89 > dhcpcd[834]: forked to background, child pid 846
90 > dhcpcd[846]: enp5s0: waiting for carrier
91 > dhcpcd[846]: sit0: unsupported interface type 308, falling back to
92 > ethernet dhcpcd[846]: sit0: broadcasting for a lease
93 > dhcpcd[846]: enp5s0: carrier acquired
94 > klogd: r8169 0000:05:00.0 enp5s0: link up
95 > klogd: IPv6: ADDRCONF(NETDEV_CHANGE): enp5s0: link becomes ready
96 > dhcpcd[846]: enp5s0: sending IPv6 Router Solicitation
97 > dhcpcd[846]: enp5s0: sendmsg: Cannot assign requested address
98 > dhcpcd[846]: enp5s0: rebinding lease of 192.168.1.2
99 > dhcpcd[846]: enp5s0: acknowledged 192.168.1.2 from 192.168.1.1
100 > dhcpcd[846]: enp5s0: checking for 192.168.1.2
101 > dhcpcd[846]: enp5s0: sending IPv6 Router Solicitation
102 > dhcpcd[846]: enp5s0: sending IPv6 Router Solicitation
103 > dhcpcd[846]: enp5s0: leased 192.168.1.2 for 86400 seconds
104 >
105 > I'm not sure what 'sit0' is, but it doesn't seem to affect the outcome.
106 >
107 > HTH others who may face the same problem.
108
109 Thanks for sharing this Philip. I was surprised to see that firmware for NICs
110 are meant to be added in this kernel config option. I thought that this
111 config option was only for the video card firmware ...
112
113 # cat /usr/src/linux/.config | grep EXTRA_FIRMWARE
114 CONFIG_EXTRA_FIRMWARE="radeon/R600_rlc.bin radeon/R700_rlc.bin"
115 CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware/"
116
117 In my /lib/firmware I have:
118
119 # ls -la /lib/firmware/
120 total 1448
121 drwxr-xr-x 5 root root 4096 Sep 14 2012 .
122 drwxr-xr-x 14 root root 12288 Mar 31 09:26 ..
123 drwxr-x--- 2 root root 4096 Feb 4 2012 b43
124 drwxr-xr-x 2 root root 4096 Sep 14 2012 intel-ucode
125 -rw-r--r-- 1 root root 1451687 Sep 14 2012 microcode.dat
126 drwxr-xr-x 2 root root 4096 Dec 31 09:58 radeon
127
128 and from dmesg I can see that all of these get loaded *without* being defined
129 in the CONFIG_EXTRA_FIRMWARE= ...
130
131 On this box in any case I do not have sys-kernel/linux-firmware installed, but
132 have installed x11-drivers/radeon-ucode for the video card and net-
133 wireless/b43-fwcutter for the wireless NIC. Are you saying that the correct
134 way to go about this is to uninstall these packages and instead define the
135 firmware in the kernel in CONFIG_EXTRA_FIRMWARE= ???
136
137 I'm confused. :-/
138
139 PS. I'm currently running kernel-3.7.10-gentoo.
140 --
141 Regards,
142 Mick

Attachments

File name MIME type
signature.asc application/pgp-signature

Replies

Subject Author
Re: [gentoo-user] Udev 200 : dhcpcd problem + solution Philip Webb <purslow@××××××××.net>