mhi: core: Treat MHI_ASSERT as fatal error
Currently MHI_ASSERT causes kernel panic in debug mode.
In performance mode it just prints warning and continues.
This can cause memory over-read, out of bound memory read.
All the places driver is asserting need to result into a
kernel panic to root cause the issue and prevent unwanted
memory access.
Change-Id: Ica8e1fec7be916621398cd4c5f8bfa6718c33d72
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
diff --git a/drivers/bus/mhi/core/mhi_internal.h b/drivers/bus/mhi/core/mhi_internal.h
index d0bc74b..a2a4359 100644
--- a/drivers/bus/mhi/core/mhi_internal.h
+++ b/drivers/bus/mhi/core/mhi_internal.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2018-2019, The Linux Foundation. All rights reserved.
+/* Copyright (c) 2018-2020, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@@ -879,22 +879,9 @@
irqreturn_t mhi_intvec_handlr(int irq_number, void *dev);
void mhi_ev_task(unsigned long data);
-#ifdef CONFIG_MHI_DEBUG
-
-#define MHI_ASSERT(cond, msg) do { \
+#define MHI_ASSERT(cond, fmt, ...) do { \
if (cond) \
- panic(msg); \
+ panic(fmt); \
} while (0)
-#else
-
-#define MHI_ASSERT(cond, msg) do { \
- if (cond) { \
- MHI_ERR(msg); \
- WARN_ON(cond); \
- } \
-} while (0)
-
-#endif
-
#endif /* _MHI_INT_H */