Recently another user asked why they were loading the fjes
module. While I was trying to understand that question, I realized that Linux is also loading the same module for me.
Now, this is the module's information according to modinfo
:
filename: /lib/modules/4.8.0-2-amd64/kernel/drivers/net/fjes/fjes.ko
version: 1.1
license: GPL
description: FUJITSU Extended Socket Network Device Driver
author: Taku Izumi <izumi.taku@jp.fujitsu.com>
srcversion: 3411C5E01C7BDA50105EEE7
alias: acpi*:PNP0C02:*
depends:
intree: Y
vermagic: 4.8.0-2-amd64 SMP mod_unload modversions
signat: PKCS#7
signer:
sig_key:
sig_hashalgo: md4
I find this weird. My network adaptor is a Realtek PCI Express card, and it's supported by the module r8169
.
First thing I checked was if this module had beed added by any particular package. I'm on Debian testing, so I checked that file with dpkg -S
. It is supplied by the kernel image package itself:
# dpkg -S /lib/modules/4.8.0-2-amd64/kernel/drivers/net/fjes/fjes.ko
linux-image-4.8.0-2-amd64: /lib/modules/4.8.0-2-amd64/kernel/drivers/net/fjes/fjes.ko
I noticed that the modalias for this module seems very generic. It doesn't even specify a vendor. So I decided to see which devices in /sys/devices
would have a modalias matching this string. I got five results, so I wrote a small script to print a bit more information about them. This is what I got:
./devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/PNP0C02:03
modalias: acpi:PNP0C02:
path: \_SB_.PCI0.PDRC
physical_node -> ../../../../pnp0/00:08
./devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:00/PNP0C02:01
modalias: acpi:PNP0C02:
path: \_SB_.PCI0.LPCB.SIO1
physical_node -> ../../../../../pnp0/00:04
./devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:00/INT3F0D:00
modalias: acpi:INT3F0D:PNP0C02:
path: \_SB_.PCI0.LPCB.CWDT
physical_node -> ../../../../../pnp0/00:03
./devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:00/PNP0C02:02
modalias: acpi:PNP0C02:
path: \_SB_.PCI0.LPCB.RMSC
physical_node -> ../../../../../pnp0/00:06
./devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:00/PNP0C02:00
modalias: acpi:PNP0C02:
path: \_SB_.PCI0.LPCB.LDRC
physical_node -> ../../../../../pnp0/00:01
The data above is a dump of the files in /sys/devices/...
. The lines modalias
and path
are the contents of those files, and physical_node
is the destination of that symbolic link to a directory in /sys/devices
.
Each one of them is indeed associated with a different physical device, but I have no idea what they are. All I can say is that no other driver module installed on my system has an alias that matches acpi:PNP0C02:
.
These are the questions I'm left with:
- What's the meaning of
PCI0.LPCB
in the ACPI tree? I infered from the Ubuntu FAQ on ACPI Tricks and Tips that it may be (or should I infer that it should be?) related to a battery. However this is a desktop PC, not a laptopt; - How come I have three difference devices which all alias to the same thing? Isn't this troubling to the kernel?
- Is the
fjes
module improperly configured for having such a modalias? Should a bug be opened?