Messages in this thread Patch in this message | | | Date | Thu, 04 Jun 2020 12:22:49 +0200 | From | Peter Zijlstra <> | Subject | [PATCH 8/8] x86/entry, bug: Comment the instrumentation_begin() usage for WARN() |
| |
Explain the rationale for annotating WARN(), even though, strictly speaking printk() and friends are very much not safe in many of the places we put them.
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> --- arch/x86/include/asm/bug.h | 6 ++++++ 1 file changed, 6 insertions(+)
--- a/arch/x86/include/asm/bug.h +++ b/arch/x86/include/asm/bug.h @@ -76,6 +76,12 @@ do { \ unreachable(); \ } while (0) +/* + * This instrumentation_begin() is strictly speaking incorrect; but it + * suppresses the complaints from WARN()s in noinstr code. If such a WARN() + * were to trigger, we'd rather wreck the machine in an attempt to get the + * message out than not know about it. + */ #define __WARN_FLAGS(flags) \ do { \ instrumentation_begin(); \
| |