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>
This commit is contained in:
Hemant Kumar 2020-01-14 17:18:55 -08:00
parent 92fc776b9a
commit 36e333422f

View File

@ -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
@ -914,22 +914,9 @@ irqreturn_t mhi_intvec_threaded_handlr(int irq_number, void *dev);
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 */