On Mon, Mar 15, 2021 at 10:27:08AM -0600, Logan Gunthorpe wrote:
In this case the WARN_ON is just to guard against misuse of theRight, WARN_ON and return is the right pattern for an assertion that
function. It should never happen unless a developer changes the code in
a way that is incorrect. So I think that's the correct use of WARN_ON.
Though I might change it to WARN and return, that seems safer.
must never happen:
if (WARN_ON(foo))
return -1
Linus wants assertions like this to be able to recover. People runing
the 'panic on warn' mode want the kernel to stop if it detects an
internal malfunction.
Jason