fix crashed at bm_ulog_print_log

addr of bmdev->debug_enabled should be checked if it is NULL, or it
may cause NULL pointer kernel panic

Change-Id: I31273f9b0144e25fa7eac3ef4eca34a07c0cae70
Signed-off-by: xuxj12 <xuxj12@motorola.com>
Reviewed-on: https://gerrit.mot.com/2383945
SME-Granted: SME Approvals Granted
SLTApproved: Slta Waiver
Tested-by: Jira Key
Reviewed-by: Jianqi Yang <yangj@motorola.com>
Reviewed-by: Yonghua Yan <yanyh2@motorola.com>
Submit-Approved: Jira Key
This commit is contained in:
xuxj12 2022-09-14 17:49:22 +08:00
commit 39adeee7ac

View file

@ -38,7 +38,7 @@
#define bm_dbg(bmdev, fmt, ...) \
do { \
if (*bmdev->debug_enabled) \
if (bmdev->debug_enabled && *bmdev->debug_enabled) \
pr_info(fmt, ##__VA_ARGS__); \
else \
pr_debug(fmt, ##__VA_ARGS__); \
@ -215,6 +215,11 @@ int bm_ulog_get_log(char *buf, u32 size)
return -ENODEV;
}
if (!bmdev->debug_enabled) {
pr_err("BM ulog debug_enabled invalid\n");
return -ENODEV;
}
if (*bmdev->debug_enabled == false) {
pr_debug("BM ulog has not enabled yet\n");
return -ENOTSUPP;
@ -254,6 +259,11 @@ int bm_ulog_get_mask_log(enum bm_ulog_category_bitmap categories,
return -ENODEV;
}
if (!bmdev->debug_enabled) {
pr_err("BM ulog debug_enabled invalid\n");
return -ENODEV;
}
if (*bmdev->debug_enabled == false) {
pr_debug("BM ulog has not enabled yet\n");
return -ENOTSUPP;
@ -316,6 +326,11 @@ static int bm_ulog_print_init_log(u32 size)
return -ENODEV;
}
if (!bmdev->debug_enabled) {
pr_err("BM ulog debug_enabled invalid\n");
return -ENODEV;
}
if (!size || size > MAX_ULOG_READ_BUFFER_SIZE) {
pr_err("BM ulog invalid size=%d\n", size);
return -EINVAL;
@ -342,6 +357,11 @@ int bm_ulog_print_log(u32 size)
return -ENODEV;
}
if (!bmdev->debug_enabled) {
pr_err("BM ulog debug_enabled invalid\n");
return -ENODEV;
}
if (*bmdev->debug_enabled == false) {
pr_debug("BM ulog has not enabled yet\n");
return -ENOTSUPP;
@ -375,6 +395,11 @@ int bm_ulog_print_mask_log(enum bm_ulog_category_bitmap categories,
return -ENODEV;
}
if (!bmdev->debug_enabled) {
pr_err("BM ulog debug_enabled invalid\n");
return -ENODEV;
}
if (*bmdev->debug_enabled == false) {
pr_debug("BM ulog has not enabled yet\n");
return -ENOTSUPP;