Skip to content

update-linbofs: parse_firmware_logs does not find all failed module loads #154

Description

@lemertens

First of all: I just realized that update-linbofs automatically tries to detect and fix failed module loads which is an awesome feature !

Unfortuntaly, the function "parse_firmware_logs" does not yield any missing modules for our log files even though i found several when going through the logs manually. I do not have a deep understanding of kernel modules though, so it might be, that all of this "failed"-messages are ignored for a good reason....

Here are the cases where i see failed module loads and the script doesn't:

One module that wasn't found always appears in a log entry like
r8169 0000:03:00.0: Direct firmware load for rtl_nic/rtl8168f-1.fw failed with error -2

In this case the part looking for pci_id (local pci_ids=...) does ignore it due to the regex
00:[0-9a-f][0-9a-f].[0-9a-f]:

Changing the regex to
[0-9a-f][0-9a-f]:[0-9a-f][0-9a-f].[0-9a-f]:
would fix that.

Another unfound module appears in

02.0: Direct firmware load for i915/skl_dmc_ver1_27.bin failed with error -2
i915 0000:00:02.0: [drm] Failed to load DMC firmware i915/skl_dmc_ver1_27.bin (-ENOENT). Disabling runtime power management.

Here the script extracts the pci_id 00:02.0 but later on fails to find a line that contains this ID as well as "for .* failed".

Third undetected firmware load-fail looks like this in our log file

: Direct firmware load for rtl_nic/rtl8153b-2.fw failed with error -2
r8152 2-9:1.0: unable to load firmware patch rtl_nic/rtl8153b-2.fw (-2)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions