Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[gentoo-user] Having Trouble with Wireless Interface

149 views
Skip to first unread message

Hunter Jozwiak

unread,
May 12, 2014, 3:40:02 PM5/12/14
to
Hi all. I got Espeakup to finally function, but I have a problem now
with my Realtech 8188 WiFi adapter, Rev01, according to ifconfig. I
know it shows up as wlp7s0 on an ifconfig, normally. But for what ever
reason, it isn't showing up. I have, in my /etc/conf.d/net the line:
wlp7s0="DHCP". When I run ifconfig wlp7s0 up, I get an error about how
the device is not able to be found. The driver shows up as a module in
the kernel.

the

unread,
May 13, 2014, 1:40:02 AM5/13/14
to
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Could it be a firmware problem? dmesg would help.

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQEcBAEBCAAGBQJTca6DAAoJEK64IL1uI2haJ1sIAJfCcqmesAcByVMGt6gn3+jD
5J6equcfr5/2xh+qJ7WmVR3RYtZTqeoBhfhUEvLcDRhuA5HgXg5owgIQBjynEfdw
91SEXM00bJ+2y4JPh31aYMGnLx279B+OMw13dOYzZmwOSHU1DK4AiJW/ueYSb8LS
XVI8tJJS+D3XY4lbdiWNykc9nEhbgI4IahNFS8bZP9wuf3OFtBGo6zJn/sAN3EEg
FLArhZpnncmdeQI07exHpMsqRY380MUPgua3acygVjKfkrIzKhwzsKRoWYj5IZqd
3Emzcoc6+xQgQl65EborNOrvsgwEN/3ZW2MClNnLq2m4kuqaY6GnPEacGowxwbo=
=O1JI
-----END PGP SIGNATURE-----

Alexander Kapshuk

unread,
May 13, 2014, 7:10:02 AM5/13/14
to
I use wpa_supplicant to manage my wireless connections.
Here's what I have in my /etc/conf.d/net:
# Prefer wpa_supplicant over wireless-tools
modules="wpa_supplicant"

wpa_supplicant_wlp2s0="-Dnl80211"

And the output of lspci:
02:00.0 Ethernet controller: Qualcomm Atheros AR242x / AR542x Wireless
Network Adapter (PCI-Express) (rev 01)
Subsystem: Hewlett-Packard Company Device 137b
Flags: bus master, fast devsel, latency 0, IRQ 16
Memory at d6000000 (64-bit, non-prefetchable) [size=64K]
Capabilities: [40] Power Management version 2
Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit-
Capabilities: [60] Express Legacy Endpoint, MSI 00
Capabilities: [90] MSI-X: Enable- Count=1 Masked-
Capabilities: [100] Advanced Error Reporting
Capabilities: [140] Virtual Channel
Kernel driver in use: ath5k
Kernel modules: ath5k

Are you setting up wireless after doing a fresh install, or did you have
it working before and then it just stopped working for you?

Hunter Jozwiak

unread,
May 13, 2014, 7:50:01 AM5/13/14
to
This is fresh. And genkernel doesn't show RTL8188CE in the staging drivers.
It shows drivers with uffixes U and Eu, but not the CE driver.

Alexander Kapshuk

unread,
May 13, 2014, 8:30:02 AM5/13/14
to
Looks like the kernel driver for your wireless NIC is RTL8192CE
---------------------------------------------------------------------
/usr/src/linux/drivers/net/wireless/rtlwifi/Kconfig:12,22
config RTL8192CE
tristate "Realtek RTL8192CE/RTL8188CE Wireless Network Adapter"
depends on PCI
select RTL8192C_COMMON
select RTLWIFI
select RTLWIFI_PCI
---help---
This is the driver for Realtek RTL8192CE/RTL8188CE 802.11n PCIe
wireless network adapters.

If you choose to build it as a module, it will be called rtl8192ce
---------------------------------------------------------------------
If you like to check if RTL8192CE is enabled in your kernel's .config
file. If it isn't, you probably want to compile it as a module, and then
add rtl8192ce to /etc/conf.d/modules as well.

Hunter Jozwiak

unread,
May 13, 2014, 9:30:02 AM5/13/14
to
Oddly enough, I had a few other CONFIG modules not included, namely
CONFIG_80211. But, when I activated it, my kernel got bricked, and on
reboot, I got dumped in some prompt that said that the system couldn't find
a root and I should press Enter to continue, Q to skip, and something else
would give me a shell. I just did a genkernel --menuconfig kernel and built
in the modules, the compile went smooth, and I made no other changes. But
now, like I've mentioned, I've got a bricked kernel.

Alexander Kapshuk

unread,
May 13, 2014, 10:00:02 AM5/13/14
to
Did your genkernel boot OK, before you enabled 'CONFIG_.*80211'?
What output does the command line shown below return?
grep '^CONFIG.*80211.*=[nmy]' /usr/src/linux/.config
Here's what I get on my system:
CONFIG_CFG80211=y
CONFIG_CFG80211_DEFAULT_PS=y
CONFIG_MAC80211=y
CONFIG_MAC80211_HAS_RC=y
CONFIG_MAC80211_RC_MINSTREL=y
CONFIG_MAC80211_RC_MINSTREL_HT=y
CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
CONFIG_MAC80211_LEDS=y

I assume you also ran 'genkernel all' after running 'genkernel
--menuconfig', didn't you?

What's the contents of your /etc/conf.d/modules?

/etc/fstab?

and what's the output of 'mount|grep ^/dev'?

Alexander Kapshuk

unread,
May 13, 2014, 11:00:03 AM5/13/14
to
While I do not use genkernel myself, I thought you might want to take a
look at this wiki article, http://wiki.gentoo.org/wiki/Genkernel, as a
way to retrace your steps and hopefully find what's got amiss.

Stroller

unread,
May 14, 2014, 5:50:03 AM5/14/14
to

On Tue, 13 May 2014, at 1:19 pm, Alexander Kapshuk <alexande...@gmail.com> wrote:
> …
> If you like to check if RTL8192CE is enabled in your kernel's .config
> file. If it isn't, you probably want to compile it as a module, and then
> add rtl8192ce to /etc/conf.d/modules as well.

Am pretty sure there's no need to add this one to /etc/conf.d/modules - IME it'll just be found and loaded automagically by the kernel.

Stroller.

Alexander Kapshuk

unread,
May 14, 2014, 7:40:02 AM5/14/14
to

On 05/14/2014 12:41 PM, Stroller wrote:
> On Tue, 13 May 2014, at 1:19 pm, Alexander Kapshuk <alexande...@gmail.com> wrote:
>> �
>> If you like to check if RTL8192CE is enabled in your kernel's .config
>> file. If it isn't, you probably want to compile it as a module, and then
>> add rtl8192ce to /etc/conf.d/modules as well.
> Am pretty sure there's no need to add this one to /etc/conf.d/modules - IME it'll just be found and loaded automagically by the kernel.
>
> Stroller.
>
>
Thanks for pointing that out. I wasn't aware of that. As I mentioned in
my previous post, I do not use genkernel myself. That's why I thought
I'd refer the person inquiring to the gentoo wiki article about genkernel.

Hopefully, someone else on this list with more experience building the
genkernel will be able to offer advice that would be helpful.

Mick

unread,
May 14, 2014, 3:40:02 PM5/14/14
to
After you fix your kernel as advised by others, also fix your /etc/conf.d/net.

To specify the use of DHCP you would typically use this syntax, which is case
sensitive:

config_wlp7s0="dhcp"

If you want to specify particular parameters to dhcp for this interface try
something like this example:

dhcpcd_wlp7s0="-t 45"


You should also spend some time reading through
/usr/share/doc/netifrc-0.2.2/net.example.bz2 for more complex configurations.

--
Regards,
Mick
signature.asc

Stroller

unread,
May 15, 2014, 4:50:01 AM5/15/14
to

On Wed, 14 May 2014, at 12:36 pm, Alexander Kapshuk <alexande...@gmail.com> wrote:
>>> …
>>> If you like to check if RTL8192CE is enabled in your kernel's .config
>>> file. If it isn't, you probably want to compile it as a module, and then
>>> add rtl8192ce to /etc/conf.d/modules as well.
>> Am pretty sure there's no need to add this one to /etc/conf.d/modules - IME it'll just be found and loaded automagically by the kernel.
>
> Thanks for pointing that out. I wasn't aware of that. As I mentioned in
> my previous post, I do not use genkernel myself.

Neither do I - for this reason I found it a little frustrating trying to help in a recent thread, myself.

However, I'm pretty sure that loadable kernel modules behave the same whether your kernel is built "by hand" or by genkernel - if you have modules listed in /etc/conf.d/modules then I have to wonder if you really need them there.

I haven't used that file for years, and I prefer to compile everything as a module, too.

Stroller.

Alan McKinnon

unread,
May 15, 2014, 5:40:05 AM5/15/14
to
On 15/05/2014 10:39, Stroller wrote:
>
> On Wed, 14 May 2014, at 12:36 pm, Alexander Kapshuk <alexande...@gmail.com> wrote:
>>>> �
Some modules don't autoload, usually because there's no hardware they
drive and so nothing to probe.

netfilter modules come to mind, as well as VirtualBox. One of the vbox
modules doesn't autoload by just stating VirtualBox, so the easiest is
to put it in /etc/conf.d/modules so it's always available. It's an edge
case, so the vast majority of modules load properly without intervention
form us.




--
Alan McKinnon
alan.m...@gmail.com

Hunter Jozwiak

unread,
May 15, 2014, 7:40:01 AM5/15/14
to
I got the networking interface to function correct.y now. Thanks all for the
help!

-----Original Message-----
From: Alan McKinnon [mailto:alan.m...@gmail.com]
Sent: Thursday, May 15, 2014 5:29 AM
To: gento...@lists.gentoo.org
Subject: Re: [gentoo-user] Having Trouble with Wireless Interface

On 15/05/2014 10:39, Stroller wrote:
>
> On Wed, 14 May 2014, at 12:36 pm, Alexander Kapshuk
<alexande...@gmail.com> wrote:
>>>> .

Alexander Kapshuk

unread,
May 15, 2014, 9:30:02 AM5/15/14
to

On 05/15/2014 11:39 AM, Stroller wrote:
> On Wed, 14 May 2014, at 12:36 pm, Alexander Kapshuk <alexande...@gmail.com> wrote:
>>>> �
That's interesting. I wasn't aware of that either.

So far, I've just been following the instructions given in the handbook,
section 7.d, which do recommend explicitly specifying the kernel modules
to be loaded at boot time in /etc/conf.d/modules.

How does the kernel know then what modules to load at boot time, if it
doesn't rely on /etc/conf.d/modules to supply the list of modules to be
loaded?

Does it use udev, or some other mechanism for that?

Thanks.

Stroller

unread,
May 15, 2014, 1:30:03 PM5/15/14
to

On Thu, 15 May 2014, at 10:29 am, Alan McKinnon <alan.m...@gmail.com> wrote:
>> …
>> However, I'm pretty sure that loadable kernel modules behave the same whether your kernel is built "by hand" or by genkernel - if you have modules listed in /etc/conf.d/modules then I have to wonder if you really need them there.
>>
>> I haven't used that file for years, and I prefer to compile everything as a module, too.
>
> Some modules don't autoload, usually because there's no hardware they
> drive and so nothing to probe.
>
> netfilter modules come to mind, as well as VirtualBox. …

Many thanks, that's very informative.

Stroller.

Mick

unread,
May 15, 2014, 4:00:02 PM5/15/14
to
On Thursday 15 May 2014 14:24:57 Alexander Kapshuk wrote:
> On 05/15/2014 11:39 AM, Stroller wrote:
> > On Wed, 14 May 2014, at 12:36 pm, Alexander Kapshuk
<alexande...@gmail.com> wrote:
> >>>> …
I understand it is udev magic which probes the hardware and it fetches the
corresponding module from the kernel, as long as it has been compiled.
Incidentally, I noticed that I now have this running on my system:

/lib/systemd/systemd-udevd --daemon

--
Regards,
Mick
signature.asc

Alexander Kapshuk

unread,
May 16, 2014, 9:40:03 AM5/16/14
to
Understood. Thanks. I too have systemd-udevd running now that you
mention it.

Jonathan Callen

unread,
May 17, 2014, 9:10:02 PM5/17/14
to
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
The actual udev magic in question is this line from
/lib/udev/rules.d/80-drivers.rules:

ENV{MODALIAS}=="?*", RUN{builtin}+="kmod load $env{MODALIAS}"

When a new device is seen by the kernel (which includes cold-plug on
boot), udev calls the equivalent of `modprobe ${MODALIAS}` (in reality,
the actual command is now just a call to libkmod, which is linked into
udev itself), where ${MODALIAS} is the contents of the file "modalias"
under the /sys directory describing that device. This file may look
something like this (actual example from my machine):

pci:v00008086d00000416sv00001558sd00007104bc03sc00i00

This information (following the the initial "pci:", indicating that this
is a PCI device), can be split into multiple identifier/number pairs,
like so:

v 00008086
d 00000416
sv 00001558
sd 00007104
bc 03
sc 00
i 00

In this case I have vendor "00008086" (Intel Corporation), device
"00000416" (4th Gen Core Processor Integrated Graphics Controller),
subsystem vendor "00001558" (CLEVO/KAPOK Computer), subsystem device
"00007104" (not listed in pci.ids, sorry), base class "03" (Display
controller), sub class "00" (VGA compatible controller), and programming
interface "00" (VGA controller).

This information is then used to look up the module in
/lib/modules/$(uname -r)/modules.alias (actually, modules.alias.bin is
used if present to speed up the lookup). This lookup finds the line:

alias pci:v00008086d00000416sv*sd*bc03sc*i* i915

As my card matches the glob in the second field in that line, the module
listed in the third field is loaded to handle the card. The actual
modules.alias file is generated by depmod when the module is installed
by reading the information from the module itself.

- --
Jonathan Callen
123456789012345678901234567890123456789012345678901234567890123456789012
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBCgAGBQJTeAdJAAoJELHSF2kinlg42aAP/ih0j0GdrC7FEY79MH4wg/YN
Wv7lwfNRjETmMO9KpnOUXm5rphBc6j7nI4JVmaBbKB3MOk4CbqQWulfsqcuOKkU6
cuszlbq3Rkhauq4e9dn1/oF6jjxspe0oKjbsEzMD0UVpFlEJC+WVXph82yuJN0MC
5QcDkJLSZSubeupBiLDL1iQIpPNyUVfAAB8iYAn1HAzQ20RDk32k62rBVg3dHrUx
9DCZV5SepEhhtSfFqk3nDCZp0FlRmnFmKCsEVAuhuuSLn5lZxaaY5gFiFENmi3Yf
tyhJEDkBAVZJaISccWCpMhMrqGCdvnNghuCgt4qjXaOIsfSA85YkocYq+nAXTxx4
W+6N2K7jl8Ophlmqx63dSqlMMquCNNGWPY03cAC0zFddQgX7Twyshie+xP69Ze8J
0AhFQUy6i5JSWN7gNWExK/9BbegEiLF5jQr7GTbiGpciP6cxCF7AQlUXopbBQcLN
UoOdATw1YMe6C4dTTEIRoT6tNirLkdKLuWay0nnz1wiXA09NOtPdfXjBm4eFcHWb
TI0OybeYnJFTrplm6QHwqpbDik9Fo/ujaK3NZfbVIMwgIngXPn02jkRsBsSomyN/
Awnowz0MdHQODVND+mekguHHo1eHnirwNFbJeES6qrbHK3sezPuglpS5C3tZWnI3
9DlwT27j8A4YYl0LugkD
=Oswq
-----END PGP SIGNATURE-----

Alexander Kapshuk

unread,
May 21, 2014, 2:00:03 PM5/21/14
to
On 05/18/2014 04:05 AM, Jonathan Callen wrote:
On 05/15/2014 03:50 PM, Mick wrote:
> On Thursday 15 May 2014 14:24:57 Alexander Kapshuk wrote:
>> On 05/15/2014 11:39 AM, Stroller wrote:
>>> On Wed, 14 May 2014, at 12:36 pm, Alexander Kapshuk
> <alexande...@gmail.com> wrote:
>>>>>> ?
>
Thanks for the explanation.

Just to double check I understood it correctly, there's no need to put the list of kernel modules into /etc/conf.d/modules any longer, because udev is aware of the modules that have been built and will load them by consulting /lib/modules/$(uname -r)/modules.alias. Is that correct?

Thanks.

Mick

unread,
May 21, 2014, 3:40:03 PM5/21/14
to
No, it is incorrect, or I better say incomplete. There are some modules
(netfilter, virtualbox, et al.) which will not be autoloaded. You will need
to add those in your /etc/conf.d/modules and make sure the syntax is correct
for the kernel version that you intend to boot with.
--
Regards,
Mick
signature.asc

Jonathan Callen

unread,
May 21, 2014, 11:40:02 PM5/21/14
to
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

On 05/21/2014 01:56 PM, Alexander Kapshuk wrote:
> Thanks for the explanation.
>
> Just to double check I understood it correctly, there's no need to put
> the list of kernel modules into /etc/conf.d/modules any longer, because
> udev is aware of the modules that have been built and will load them by
> consulting /lib/modules/$(uname -r)/modules.alias. Is that correct?
>
> Thanks.
>
>

You only need to list the modules in /etc/conf.d/modules (for OpenRC) or
/etc/modules-load.d/*.conf (for systemd) if they would not otherwise be
loaded. Just about any module that provides a driver for hardware that
can be autodetected (that is, PCI, USB, etc.) will be auto-loaded by
udev. Modules used to provide filters, etc. for iptables are autoloaded
by iptables itself as needed. Some modules do not have anything that
would cause them to be autoloaded (such as the vbox-* modules from
VirtualBox), in which case you *would* need to explicitly load them.

- --
Jonathan Callen
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBCgAGBQJTfXBLAAoJELHSF2kinlg4TQ0QAKGDJ3ZFZOeK8Y4hEE6xGMXV
f2vjjAUhyrR2J67vwA5eJ377ZxF5ieMvY8N4sTk68hlLDWZrAGmfLs5u+d9gbqaO
3dF6ekvnebdH9apQ2xdCpaWD/AlfeZ8JR1Mav3kYkjaurGeMkNN3cqZAzkaip8gZ
jJ1TWRy74+jJFv2F904/pjShKKEl+BEssLcSSFr91Jx70fNKiby+1oJfhZIcm4Kj
8KMLz/sh7BB6ia0KnEnNM2P11zRct+4ParXIAhCxT2P/x5DvOHGbgMie27k8VY1J
8v8LjbqCAZS43In6Vr07IfMwy0wNQAkob6GkGytyiIcijSdVDINkwSomcSS1Madb
xWTWX1gEqogHtQoe3GkaW2H+nksZejtJwt5FzQsUmEDytNA5kqef7UiW1rV6rXE5
Uz94OZiopQTyrXYtnZHsCnY0JGu4DnCvm+JLSh5ee1VDRs8aPX22pWjCEtat1q9c
+QKTVW62D32zC8cgLH04Hgbc6zN3/J3akTJftZRSISqMCA1xQwe0wyZet2RKVJUo
anyC/lOh2mIp9zCTUvTt81oUpElTPKN4l7UjDuPoLK7n4oOK2Ao9frPeEoDxJGam
0fhlOwAg5PpV4qSyWQGneg96UlirB9O9mai/wEzzOZPxaY9gu/scqXrPUZWGwQbp
BpEgVnDCGLTpZE6cqfu1
=SJpi
-----END PGP SIGNATURE-----

Alexander Kapshuk

unread,
May 22, 2014, 12:40:02 PM5/22/14
to
On 05/22/2014 06:34 AM, Jonathan Callen wrote:
On 05/21/2014 01:56 PM, Alexander Kapshuk wrote:
> Thanks for the explanation.

> Just to double check I understood it correctly, there's no need to put
> the list of kernel modules into /etc/conf.d/modules any longer, because
> udev is aware of the modules that have been built and will load them by
> consulting /lib/modules/$(uname -r)/modules.alias. Is that correct?

> Thanks.



You only need to list the modules in /etc/conf.d/modules (for OpenRC) or
/etc/modules-load.d/*.conf (for systemd) if they would not otherwise be
loaded.  Just about any module that provides a driver for hardware that
can be autodetected (that is, PCI, USB, etc.) will be auto-loaded by
udev.  Modules used to provide filters, etc. for iptables are autoloaded
by iptables itself as needed.  Some modules do not have anything that
would cause them to be autoloaded (such as the vbox-* modules from
VirtualBox), in which case you *would* need to explicitly load them.

>
Understood. Thanks to all those who did respond to my query.



0 new messages