summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichal Hocko <mhocko@kernel.org>2018-04-05 16:25:30 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-07-11 12:46:40 +0200
commit88a899fa2032b34ef3ac5dae3c70c8394fa5287c (patch)
tree39951f33cd749a3b55d76db6ceff9411f36d908d
parentebeed1e38d45d31da241fd1e4a93c0517a6cb6cf (diff)
downloadlinux-stable-88a899fa2032b34ef3ac5dae3c70c8394fa5287c.tar.gz
linux-stable-88a899fa2032b34ef3ac5dae3c70c8394fa5287c.tar.bz2
linux-stable-88a899fa2032b34ef3ac5dae3c70c8394fa5287c.zip
include/linux/mmdebug.h: make VM_WARN* non-rvals
[ Upstream commit 91241681c62a5a690c88eb2aca027f094125eaac ] At present the construct if (VM_WARN(...)) will compile OK with CONFIG_DEBUG_VM=y and will fail with CONFIG_DEBUG_VM=n. The reason is that VM_{WARN,BUG}* have always been special wrt. {WARN/BUG}* and never generate any code when DEBUG_VM is disabled. So we cannot really use it in conditionals. We considered changing things so that this construct works in both cases but that might cause unwanted code generation with CONFIG_DEBUG_VM=n. It is safer and simpler to make the build fail in both cases. [akpm@linux-foundation.org: changelog] Signed-off-by: Michal Hocko <mhocko@suse.com> Reviewed-by: Andrew Morton <akpm@linux-foundation.org> Cc: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--include/linux/mmdebug.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/include/linux/mmdebug.h b/include/linux/mmdebug.h
index 451a811f48f2..deaba1cc3cfc 100644
--- a/include/linux/mmdebug.h
+++ b/include/linux/mmdebug.h
@@ -36,10 +36,10 @@ void dump_mm(const struct mm_struct *mm);
BUG(); \
} \
} while (0)
-#define VM_WARN_ON(cond) WARN_ON(cond)
-#define VM_WARN_ON_ONCE(cond) WARN_ON_ONCE(cond)
-#define VM_WARN_ONCE(cond, format...) WARN_ONCE(cond, format)
-#define VM_WARN(cond, format...) WARN(cond, format)
+#define VM_WARN_ON(cond) (void)WARN_ON(cond)
+#define VM_WARN_ON_ONCE(cond) (void)WARN_ON_ONCE(cond)
+#define VM_WARN_ONCE(cond, format...) (void)WARN_ONCE(cond, format)
+#define VM_WARN(cond, format...) (void)WARN(cond, format)
#else
#define VM_BUG_ON(cond) BUILD_BUG_ON_INVALID(cond)
#define VM_BUG_ON_PAGE(cond, page) VM_BUG_ON(cond)