diff options
Diffstat (limited to 'android-mainline/ANDROID-staging-add-debug-kinfo-driver.patch')
-rw-r--r-- | android-mainline/ANDROID-staging-add-debug-kinfo-driver.patch | 28 |
1 files changed, 8 insertions, 20 deletions
diff --git a/android-mainline/ANDROID-staging-add-debug-kinfo-driver.patch b/android-mainline/ANDROID-staging-add-debug-kinfo-driver.patch index c08e1c0f..6dd7e826 100644 --- a/android-mainline/ANDROID-staging-add-debug-kinfo-driver.patch +++ b/android-mainline/ANDROID-staging-add-debug-kinfo-driver.patch @@ -22,25 +22,24 @@ Change-Id: Ida76bf90315652b8debc081a010bc5720a5a186e Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Lee Jones <joneslee@google.com> --- - drivers/android/Kconfig | 12 +++ + drivers/android/Kconfig | 11 ++ drivers/android/Makefile | 1 + - drivers/android/debug_kinfo.c | 196 ++++++++++++++++++++++++++++++++++ - drivers/android/debug_kinfo.h | 69 ++++++++++++ - 4 files changed, 278 insertions(+) + drivers/android/debug_kinfo.c | 187 ++++++++++++++++++++++++++++++++++ + drivers/android/debug_kinfo.h | 67 ++++++++++++ + 4 files changed, 266 insertions(+) create mode 100644 drivers/android/debug_kinfo.c create mode 100644 drivers/android/debug_kinfo.h diff --git a/drivers/android/Kconfig b/drivers/android/Kconfig --- a/drivers/android/Kconfig +++ b/drivers/android/Kconfig -@@ -47,6 +47,18 @@ config ANDROID_BINDER_IPC_SELFTEST +@@ -47,6 +47,17 @@ config ANDROID_BINDER_IPC_SELFTEST exhaustively with combinations of various buffer sizes and alignments. +config ANDROID_DEBUG_KINFO + bool "Android Debug Kernel Information Support" + depends on KALLSYMS -+ depends on BROKEN + help + This supports kernel information backup for bootloader usage. + Specifics: @@ -65,7 +64,7 @@ diff --git a/drivers/android/debug_kinfo.c b/drivers/android/debug_kinfo.c new file mode 100644 --- /dev/null +++ b/drivers/android/debug_kinfo.c -@@ -0,0 +1,196 @@ +@@ -0,0 +1,187 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * debug_kinfo.c - backup kernel information for bootloader usage @@ -229,16 +228,7 @@ new file mode 100644 + strlcpy(info->last_uts_release, init_utsname()->release, sizeof(info->last_uts_release)); + info->enabled_modules_tree_lookup = IS_ENABLED(CONFIG_MODULES_TREE_LOOKUP); + info->mod_kallsyms_offset = offsetof(struct module, kallsyms); -+#if defined(CONFIG_RANDOMIZE_BASE) && defined(MODULES_VSIZE) -+ info->module_start_va = module_alloc_base; -+ info->module_end_va = info->module_start_va + MODULES_VSIZE; -+#elif defined(CONFIG_MODULES) && defined(MODULES_VADDR) -+ info->module_start_va = MODULES_VADDR; -+ info->module_end_va = MODULES_END; -+#else -+ info->module_start_va = VMALLOC_START; -+ info->module_end_va = VMALLOC_END; -+#endif ++ + update_kernel_all_info(all_info); + + return 0; @@ -266,7 +256,7 @@ diff --git a/drivers/android/debug_kinfo.h b/drivers/android/debug_kinfo.h new file mode 100644 --- /dev/null +++ b/drivers/android/debug_kinfo.h -@@ -0,0 +1,69 @@ +@@ -0,0 +1,67 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * debug_kinfo.h - backup kernel information for bootloader usage @@ -325,8 +315,6 @@ new file mode 100644 + /* For module kallsyms */ + __u32 enabled_modules_tree_lookup; + __u32 mod_kallsyms_offset; -+ __u64 module_start_va; -+ __u64 module_end_va; +} __packed; + +struct kernel_all_info { |