Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#38338 - [mkinitcpio] A 'warning blacklist' for the [block] build hook

Attached to Project: Arch Linux
Opened by Michiel Helvensteijn (mhelvens) - Wednesday, 01 January 2014, 13:43 GMT
Last edited by Dave Reisner (falconindy) - Wednesday, 01 January 2014, 21:16 GMT
Task Type Feature Request
Category Packages: Core
Status Closed
Assigned To No-one
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Since version 0.14.0, mkinitcpio displays various "missing firmware" warnings when running the [block] build hook, as explained here:

https://mailman.archlinux.org/pipermail/arch-dev-public/2013-May/024864.html

For example, I will routinely see the following warnings:

==> WARNING: Possibly missing firmware for module: aic94xx
==> WARNING: Possibly missing firmware for module: smsmdtv

I do believe these warnings could be useful, but they usually refer to unused modules. I propose that the user be allowed to blacklist specific warnings by module name, to stop mkinitcpio from crying wolf.
This task depends upon

Closed by  Dave Reisner (falconindy)
Wednesday, 01 January 2014, 21:16 GMT
Reason for closing:  Won't fix
Comment by Dave Reisner (falconindy) - Wednesday, 01 January 2014, 17:17 GMT
Not interested. If you dislike the warnings, then don't build a fallback image.
Comment by Michiel Helvensteijn (mhelvens) - Wednesday, 01 January 2014, 18:03 GMT
With respect, other people do seem interested. I believe ghatanothoa said it best:

https://bbs.archlinux.org/viewtopic.php?id=162969
"I'm not convinced that making people develop a blindspot regarding warnings in kernel updates is a such great plan though."

I suspect you've received more than your share of complaints about this new feature, so I understand your curtness. But I thought my suggestion might provide the best of both worlds (a fallback image and clean output for people who know what they are doing). Could you share your reasoning?
Comment by Dave Reisner (falconindy) - Wednesday, 01 January 2014, 18:41 GMT
If you read the rest of the thread, it's pretty clear what my line of thought is, right down to the commit message pointing out that I'd be made to suffer bug reports like this one (this is actually the first, it turns out). Adding a specific feature to ignore warnings is misguided because it does nothing to actually solve the "problem". You're still adding the module to the image, only now mkinitcpio won't warn you that it's effectively broken. This is a dangerous placebo.

I could imagine a blacklist feature to prevent modules from being added entirely, but it's moot given the existence of the modconf hook. So, not really interested in doing anything here. Whether or not you "develop a blindspot regarding warnings" isn't up to mkinitcpio, but you, the user.

Note that these warnings were added to solve a real problem:  FS#34255 
Comment by Michiel Helvensteijn (mhelvens) - Wednesday, 01 January 2014, 19:41 GMT
I agree that it would be best if such modules were left out of the image altogether. If we could have fine-grained control over this, that would be great. But the modconf hook doesn't help. It seems that mkinitcpio does not interpret the .conf files in /etc/modprobe.d, but merely adds them to the image. Even if I add, say, an "install aic94xx /bin/false" command, the module is still added; just prevented from loading at boot-time. (And of course, the warnings persist.)
Comment by Dave Reisner (falconindy) - Wednesday, 01 January 2014, 19:52 GMT
Right, the end result with blacklisting during build and blacklisting during boot is the same -- the module won't be loaded (though actually, it could be loaded later on in the blacklist-during-build case). This is what I mean by moot. Adding another feature which accomplishes the same goal, but in a different way, doesn't seem like a useful addition.
Comment by Michiel Helvensteijn (mhelvens) - Wednesday, 01 January 2014, 20:07 GMT
The same? Let's put aside for now the matter of the image size and get back to the main reason I opened this feature request: The warnings would still show up. In my terminal, they even show up in bright yellow, meant to catch the eye.

If these warnings —now useless, because the module won't be loaded— are displayed during every kernel update, people become desensitized to them. The day that a relevant warning shows up, it will be easily overlooked. Not everyone has the discipline to manually check every item on that list, especially if it's long. Why not make it easier for the user?
Comment by Dave Reisner (falconindy) - Wednesday, 01 January 2014, 20:18 GMT
Neither of us have mentioned image size... not sure where that comes from.

I'm also not sure what's "made easier for the user" if they have to go searching for some knob to disable this on their own. I'm equally uninterested in some hack to block warnings, because any heuristic used will eventually be wrong, and mask a legitimate warning.

That said, I'll reiterate that there's an existing knob to disable building of the fallback image. It's pretty obvious, too, if you've spent a non-zero amount of time playing with mkinitcpio.
Comment by Michiel Helvensteijn (mhelvens) - Wednesday, 01 January 2014, 20:39 GMT
(1) The image size remark comes from your statement that build-time-blacklisting and boot-time-blacklisting are 'the same'. I tried to casually mention it without starting a new discussion. (I failed.)

(2) The warnings don't show if the autodetect hook is included. Is that also a 'wrong heuristic'? No: the modules are not added to the image, so the warnings would be superfluous. That's all I'm asking: a way to blacklist specific modules at build-time, so there will be nothing to trigger the warnings. (I would update the original feature request, but I can't.)

(3) Why do you keep suggesting I disable building of the fallback image? That's like curing the disease by killing the patient. I find the fallback image a useful precaution.
Comment by Dave Reisner (falconindy) - Wednesday, 01 January 2014, 20:52 GMT
> The warnings don't show if the autodetect hook is included
Because the modules that generate the warnings are not included, as autodetect doesn't whitelist them.

> I find the fallback image a useful precaution.
I'm not sure what this means. A precaution for what? What problem has the fallback image actively solved for you? Removing its build would get rid of those oh-so pesky warnings.
Comment by Michiel Helvensteijn (mhelvens) - Wednesday, 01 January 2014, 21:13 GMT
I give up; this discussion is going nowhere. Your latest response indicates you may only be reading every other sentence I write. You're also being needlessly condescending.

Go ahead and close the issue. I'll write a script to do what I need.

Loading...