summaryrefslogtreecommitdiff
path: root/android-mainline/ANDROID-staging-add-debug-kinfo-driver.patch
diff options
context:
space:
mode:
Diffstat (limited to 'android-mainline/ANDROID-staging-add-debug-kinfo-driver.patch')
-rw-r--r--android-mainline/ANDROID-staging-add-debug-kinfo-driver.patch28
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 {