Merge "soc: qcom: minidump: Change the way to locate log_buf"

This commit is contained in:
qctecmdr 2020-11-15 04:36:25 -08:00 • committed by Gerrit - the friendly Code Review server
commit aad412cb4f

View file

@ -145,21 +145,22 @@ static DEFINE_SPINLOCK(md_modules_lock);
static void __init register_log_buf(void)
{
char **log_bufp;
uint32_t *log_buf_lenp;
char *log_bufp;
uint32_t log_buf_len;
struct md_region md_entry;
log_bufp = (char **)kallsyms_lookup_name("log_buf");
log_buf_lenp = (uint32_t *)kallsyms_lookup_name("log_buf_len");
if (!log_bufp || !log_buf_lenp) {
pr_err("Unable to find log_buf by kallsyms!\n");
log_bufp = log_buf_addr_get();
log_buf_len = log_buf_len_get();
if (!log_bufp || !log_buf_len) {
pr_err("Unable to locate log_buf!\n");
return;
}
/*Register logbuf to minidump, first idx would be from bss section */
strlcpy(md_entry.name, "KLOGBUF", sizeof(md_entry.name));
md_entry.virt_addr = (uintptr_t) (*log_bufp);
md_entry.phys_addr = virt_to_phys(*log_bufp);
md_entry.size = *log_buf_lenp;
md_entry.virt_addr = (uintptr_t) log_bufp;
md_entry.phys_addr = virt_to_phys(log_bufp);
md_entry.size = log_buf_len;
if (msm_minidump_add_region(&md_entry) < 0)
pr_err("Failed to add logbuf in Minidump\n");
}