Re: [PATCH 00/15] net: taint when the device driver firmware crashes

From: Shannon Nelson
Date: Sat May 09 2020 - 22:15:37 EST


On 5/9/20 6:58 PM, Andrew Lunn wrote:
On Sat, May 09, 2020 at 06:01:51PM -0700, Shannon Nelson wrote:
On 5/8/20 9:35 PM, Luis Chamberlain wrote:
Device driver firmware can crash, and sometimes, this can leave your
system in a state which makes the device or subsystem completely
useless. Detecting this by inspecting /proc/sys/kernel/tainted instead
of scraping some magical words from the kernel log, which is driver
specific, is much easier. So instead this series provides a helper which
lets drivers annotate this and shows how to use this on networking
drivers.

If the driver is able to detect that the device firmware has come back
alive, through user intervention or whatever, should there be a way to
"untaint" the kernel? Or would you expect it to remain tainted?
Hi Shannon

In general, you don't want to be able to untained. Say a non-GPL
licenced module is loaded, which taints the kernel. It might then try
to untaint the kernel to hide its.

Yeah, obviously we don't want this to be abuseable. I was just wondering about reversing this particular status if the broken device could get itself fixed.


As for firmware, how much damage can the firmware do as it crashed? If
it is a DMA master, it could of splattered stuff through
memory. Restarting the firmware is not going to reverse the damage it
has done.

True, and tho' the driver might get the thing restarted, it wouldn't necessarily know what kind of damage had ensued.

Carry on,
sln