[plug] Intel igb module issues

Dean Bergin dean.bergin at gmail.com
Thu Dec 14 11:12:03 AWST 2023


Thanks Onno & Nick


Nick, I was under the impression that most Intel kernel modules are
blob-free but I took a look on both the the affected debian system and the
working (K)ubuntu system and the results are interesting, but not yet
conclusive or obvious.

Onno, your suggestion is sound but sounds very time consuming, of which
time is not something I have in abundance.

I'm not sure if its worth noting, but this debian installation is very
minimal *without* the "standard system utilities" and only SSH was selected
at tasksel --new-install before I installed the packages I wanted to
build this system.

Is it possible that not buildng this with standard system utilities is the
probem?

Furthermore, the issue doesn't just affect this NIC/kernel module either,
it also seems to affect the following, which is currently installed in a
working ubuntu system with the e1000e kernel module, which I can reference
for differential analysis purposes (firmware, code, dependencies etc) if
and as required.

Intel 82571EB Gigabit Ethernet Controller


Thank you all for your assistance, support and advice so far!

*Debian*

dean at hdcpplkvm001:~$ sudo dmesg -T |grep firmware
[Thu Dec 14 08:53:45 2023] bluetooth hci0: firmware: failed to load
mediatek/BT_RAM_CODE_MT7922_1_1_hdr.bin (-2)
[Thu Dec 14 08:53:45 2023] firmware_class: See
https://wiki.debian.org/Firmware for information about missing firmware
[Thu Dec 14 08:53:45 2023] bluetooth hci0: firmware: failed to load
mediatek/BT_RAM_CODE_MT7922_1_1_hdr.bin (-2)
[Thu Dec 14 08:53:45 2023] bluetooth hci0: Direct firmware load for
mediatek/BT_RAM_CODE_MT7922_1_1_hdr.bin failed with error -2
[Thu Dec 14 08:53:45 2023] Bluetooth: hci0: Failed to load firmware file
(-2)
[Thu Dec 14 08:53:45 2023] Bluetooth: hci0: Failed to set up firmware (-2)
[Thu Dec 14 08:53:45 2023] [drm:amdgpu_pci_probe [amdgpu]] *ERROR* amdgpu
requires firmware installed
[Thu Dec 14 08:53:45 2023] amdgpu: See https://wiki.debian.org/Firmware for
information about missing firmware
dean at hdcpplkvm001:~$ dpkg -l '*firmware*'
Desired=Unknown/Install/Remove/Purge/Hold
|
Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                Version      Architecture Description
+++-===================-============-============-=======================================================
ii  firmware-linux-free 20200122-1   all          Binary firmware for
various drivers in the Linux kernel
dean at hdcpplkvm001:~$ sudo ls /lib/firmware/intel
ls: cannot access '/lib/firmware/intel': No such file or directory
dean at hdcpplkvm001:~$ sudo ls /lib/firmware
amd        carl9170-1.fw  isci           regulatory.db-debian
 regulatory.db.p7s-upstream  usbdux_firmware.bin
amd-ucode  cis            keyspan_pda    regulatory.db.p7s
regulatory.db-upstream      usbduxsigma_firmware.bin
av7110     dsp56k         regulatory.db  regulatory.db.p7s-debian
 usbduxfast_firmware.bin
dean at hdcpplkvm001:~$


*(K)ubuntu system*

kubuntu at kubuntu:~$ sudo dmesg -T |grep firmware
[Thu Dec 14 02:26:21 2023] Spectre V2 : Enabling Restricted Speculation for
firmware calls
kubuntu at kubuntu:~$ dpkg -l '*firmware*'
Desired=Unknown/Install/Remove/Purge/Hold
|
Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                      Version                          Architecture
Description
+++-=========================-================================-============-=================================
un  atmel-firmware            <none>                           <none>
(no description available)
un  firmware-amd-graphics     <none>                           <none>
(no description available)
un  firmware-misc-nonfree     <none>                           <none>
(no description available)
ii  firmware-sof-signed       2.0-1ubuntu4.1                   all
 Intel SOF firmware - signed
ii  linux-firmware            20220329.git681281e4-0ubuntu3.17 all
 Firmware for Linux kernel drivers
un  linux-firmware-raspi2     <none>                           <none>
(no description available)
un  linux-firmware-snapdragon <none>                           <none>
(no description available)
kubuntu at kubuntu:~$ sudo ls /lib/firmware | grep intel
intel
intel-ucode
kubuntu at kubuntu:~$ sudo ls /lib/firmware/intel
dsp_fw_bxtn.bin        dsp_fw_kbl_v3266.bin              ibt-0040-2120.ddc
 ibt-11-5.sfi     ibt-18-1.ddc      ibt-19-240-4.sfi
ibt-hw-37.7.10-fw-1.80.1.2d.d.bseq
dsp_fw_bxtn_v2219.bin  dsp_fw_kbl_v3402.bin              ibt-0040-2120.sfi
 ibt-12-16.ddc    ibt-18-1.sfi      ibt-19-32-0.ddc
 ibt-hw-37.7.10-fw-1.80.2.3.d.bseq
dsp_fw_bxtn_v3366.bin  dsp_fw_kbl_v3420.bin              ibt-0040-4150.ddc
 ibt-12-16.sfi    ibt-18-2.ddc      ibt-19-32-0.sfi
 ibt-hw-37.7.bseq
dsp_fw_cnl.bin         dsp_fw_kbl_v701.bin               ibt-0040-4150.sfi
 ibt-17-0-1.ddc   ibt-18-2.sfi      ibt-19-32-1.ddc
 ibt-hw-37.8.10-fw-1.10.2.27.d.bseq
dsp_fw_cnl_v1191.bin   dsp_fw_release.bin                ibt-0041-0041.ddc
 ibt-17-0-1.sfi   ibt-19-0-0.ddc    ibt-19-32-1.sfi
 ibt-hw-37.8.10-fw-1.10.3.11.e.bseq
dsp_fw_cnl_v1858.bin   dsp_fw_release_v3402.bin          ibt-0041-0041.sfi
 ibt-17-16-1.ddc  ibt-19-0-0.sfi    ibt-19-32-4.ddc
 ibt-hw-37.8.10-fw-22.50.19.14.f.bseq
dsp_fw_glk.bin         dsp_fw_release_v969.bin           ibt-1040-0041.ddc
 ibt-17-16-1.sfi  ibt-19-0-1.ddc    ibt-19-32-4.sfi
 ibt-hw-37.8.bseq
dsp_fw_glk_v1814.bin   fw_sst_0f28.bin                   ibt-1040-0041.sfi
 ibt-17-1.ddc     ibt-19-0-1.sfi    ibt-20-0-3.ddc                     ice
dsp_fw_glk_v2768.bin   fw_sst_0f28.bin-48kHz_i2s_master  ibt-1040-1020.ddc
 ibt-17-1.sfi     ibt-19-0-4.ddc    ibt-20-0-3.sfi
IntcSST2.bin
dsp_fw_glk_v2880.bin   fw_sst_0f28_ssp0.bin              ibt-1040-1020.sfi
 ibt-17-2.ddc     ibt-19-0-4.sfi    ibt-20-1-3.ddc
ipu3-fw.bin
dsp_fw_glk_v3366.bin   fw_sst_22a8.bin                   ibt-1040-2120.ddc
 ibt-17-2.sfi     ibt-19-16-4.ddc   ibt-20-1-3.sfi
ipu6ep_fw.bin
dsp_fw_kbl.bin         ibt-0040-0041.ddc                 ibt-1040-2120.sfi
 ibt-18-0-1.ddc   ibt-19-16-4.sfi   ibt-20-1-4.ddc
ipu6_fw.bin
dsp_fw_kbl_v1037.bin   ibt-0040-0041.sfi                 ibt-1040-4150.ddc
 ibt-18-0-1.sfi   ibt-19-240-1.ddc  ibt-20-1-4.sfi
irci_irci_ecr-master_20161208_0213_20170112_1500.bin
dsp_fw_kbl_v2042.bin   ibt-0040-1020.ddc                 ibt-1040-4150.sfi
 ibt-18-16-1.ddc  ibt-19-240-1.sfi  ibt-hw-37.7.10-fw-1.0.1.2d.d.bseq  sof
dsp_fw_kbl_v2630.bin   ibt-0040-1020.sfi                 ibt-11-5.ddc
ibt-18-16-1.sfi  ibt-19-240-4.ddc  ibt-hw-37.7.10-fw-1.0.2.3.d.bseq
sof-tplg
kubuntu at kubuntu:~$ sudo ls /lib/firmware/intel-ucode
06-0f-02  06-17-07  06-25-02  06-37-08            06-3f-02.initramfs
 06-4e-03            06-56-02.initramfs  06-5f-01  06-8a-01
 06-8f-04  06-9a-03            06-a5-02  06-ba-03  0f-04-08
06-0f-06  06-17-0a  06-25-05  06-37-09            06-3f-04.initramfs
 06-4f-01.initramfs  06-56-03            06-66-03  06-8c-01
 06-8f-05  06-9a-04            06-a5-03  06-bf-02  0f-04-09
06-0f-07  06-1a-04  06-2a-07  06-3a-09.initramfs  06-45-01.initramfs
 06-55-03            06-56-04            06-6a-05  06-8c-02
 06-8f-06  06-9c-00            06-a5-05  06-bf-05  0f-04-0a
06-0f-0a  06-1a-05  06-2c-02  06-3c-03.initramfs  06-46-01.initramfs
 06-55-04            06-56-05            06-6a-06  06-8d-01
 06-8f-07  06-9e-09.initramfs  06-a6-00  0f-03-04  0f-06-02
06-0f-0b  06-1c-02  06-2d-06  06-3d-04.initramfs  06-47-01.initramfs
 06-55-05            06-5c-02            06-6c-01  06-8e-09.initramfs
 06-8f-08  06-9e-0a.initramfs  06-a6-01  0f-04-01  0f-06-04
06-0f-0d  06-1c-0a  06-2d-07  06-3e-04            06-4c-03
 06-55-06            06-5c-09            06-7a-01  06-8e-0a.initramfs
 06-96-01  06-9e-0b.initramfs  06-a7-01  0f-04-03  0f-06-05
06-16-01  06-1d-01  06-2e-06  06-3e-06            06-4c-04
 06-55-07            06-5c-0a            06-7a-08  06-8e-0b.initramfs
 06-97-02  06-9e-0c.initramfs  06-b7-01  0f-04-04  0f-06-08
06-17-06  06-1e-05  06-2f-02  06-3e-07            06-4d-08
 06-55-0b            06-5e-03            06-7e-05  06-8e-0c.initramfs
 06-97-05  06-9e-0d.initramfs  06-ba-02  0f-04-07
kubuntu at kubuntu:~$ lsmod | grep igb
igb                   319488  0
dca                    20480  1 igb
i2c_algo_bit           16384  3 igb,amdgpu,nouveau
kubuntu at kubuntu:~$ lsmod | egrep "(Module|dca)"
Module                  Size  Used by
dca                    20480  1 igb
kubuntu at kubuntu:~$




Kind Regards,

*Dean Bergin*.


On Thu, 14 Dec 2023 at 10:27, Onno Benschop <onno at itmaze.com.au> wrote:

> You said that it works with a version of Kubuntu, but not with a version
> of Debian.
>
> Whilst there are undoubtedly many source code differences, my first "best
> guess" would be that there is a specific kernel option (perhaps even more
> than one) that's causing this. Comparing those is a much smaller job than
> diffing the two kernels and as you already pointed out, using a back-ported
> kernel did not solve the problem.
>
> The way I'd approach this is to use the source package (dpkg-src) for both
> kernels, running in their respective OS, and compile each kernel package
> from source using the standard tools to do so.
>
> If you then discover that the same happens, ie. your source compiled
> Kubuntu kernel works and the Debian compiled kernel does not, I'd start
> comparing the two config files for those two kernels.
>
> You could then potentially compile the same Debian kernel using the
> Kubuntu config and determine if that solves the problem. If it does not.
> the issue is likely in the kernel source, if it does, the issue is likely
> in the kernel config.
>
> If what you find is that neither works after compiling from source,
> explore what the difference is between a compiled from source package is
> when compared with the supplied binary package.
>
> Ultimately you're looking for a needle in a haystack. Starting with git
> and logs and source code is in my experience not the way to a swift
> resolution.
>
> Finally, git blame is a useful way to discover who changed a relevant file
> and how it was changed. While it's unlikely that the change was caused by a
> patch of the actual kernel driver - you know, that would be a "doh" moment
> - you can use tools to create a chart of dependencies and see what links
> into the driver file.
>
> For example: make -Bnd | make2graph | dot -Tsvg -o out.svg
> Source: https://unix.stackexchange.com/a/283501
>
> Disclaimer: There are MANY moving parts here. This could use as easily be
> a tool difference, for example a different version of the compiler tool
> chain, so tread wearily.
>
>
> On Thu, 14 Dec 2023 at 09:51, Nick Bannon <nick at ucc.gu.uwa.edu.au> wrote:
>
>> On Thu, Dec 14, 2023 at 09:18:02AM +0800, Dean Bergin wrote:
>> > Seems as though the backports kernel 6.5.10-1~bpo12+1 unfortunately did
>> not
>> > solve the problem.
>>
>> As the driver loads, it may have kernel log messages about having to
>> load some firmware blob(s). Are those different? try copying the "good"
>> firmware files to the "bad" system? also:
>>
>> dmesg -T |grep firmware
>> dpkg -l '*firmware*'
>> ls /lib/firmware/intel
>>
>> Nick.
>>
>> --
>>    Nick Bannon   | "I made this letter longer than usual because
>> nick-sig at rcpt.to | I lack the time to make it shorter." - Pascal
>> _______________________________________________
>> PLUG discussion list: plug at plug.org.au
>> http://lists.plug.org.au/mailman/listinfo/plug
>> Committee e-mail: committee at plug.org.au
>> PLUG Membership: http://www.plug.org.au/membership
>>
>
>
> --
> Onno Benschop
>
> ()/)/)()        ..ASCII for Onno..
> |>>?            ..EBCDIC for Onno..
> --- -. -. ---   ..Morse for Onno..
>
> If you need to know: "What computer should I buy?" http://goo.gl/spsb66
>
> ITmaze   -   ABN: 56 178 057 063   -  ph: 04 1219 8888   -
> onno at itmaze.com.au
> _______________________________________________
> PLUG discussion list: plug at plug.org.au
> http://lists.plug.org.au/mailman/listinfo/plug
> Committee e-mail: committee at plug.org.au
> PLUG Membership: http://www.plug.org.au/membership
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.plug.org.au/pipermail/plug/attachments/20231214/ac425220/attachment.html>


More information about the plug mailing list