[PATCH v1 1/3] coding-style.rst: document BUG() and WARN() rules ("do not crash the kernel")
David Hildenbrand
david at redhat.com
Tue Oct 4 23:32:45 AEDT 2022
On 26.09.22 09:44, Kalle Valo wrote:
> David Hildenbrand <david at redhat.com> writes:
>
>>>> +Use WARN_ON_ONCE() rather than WARN() or WARN_ON()
>>>> +**************************************************
>>>> +
>>>> +WARN_ON_ONCE() is generally preferred over WARN() or WARN_ON(), because it
>>>> +is common for a given warning condition, if it occurs at all, to occur
>>>> +multiple times. This can fill up and wrap the kernel log, and can even slow
>>>> +the system enough that the excessive logging turns into its own, additional
>>>> +problem.
>>>
>>> FWIW I have had cases where WARN() messages caused a reboot, maybe
>>> mention that here? In my case the logging was so excessive that the
>>> watchdog wasn't updated and in the end the device was forcefully
>>> rebooted.
>>>
>>
>> That should be covered by the last part, no? What would be your suggestion?
>
> I was just thinking that maybe make it more obvious that even WARN_ON()
> can crash the system, something along these lines:
>
> "..., additional problem like stalling the system so much that it causes
> a reboot."
Hi Kalle,
sorry for the late reply. Jonathan already queued v2 and sent it upstream.
I think that's it is already covered by the statement and that the
additional example isn't required -- most of us learned the hard way
that "excessive logging turns into its own problem" includes all weird
kinds of kernel crashes. A panic/reboot due to a watchdog not firing is
one such possible outcome.
Thanks!
--
Thanks,
David / dhildenb
More information about the Linuxppc-dev
mailing list