Build kdump only for 64-bit
It doesn't support 32-bit target. Build crashdump, kexec, and the kernel
only for 64-bit and disable the 32-bit variant.
Bug: N/A
Test: build for aosp_x86 and full
Change-Id: I3fafff4a1a45ab808aa3b8cd720925c6b8f4fef3
diff --git a/microdroid/Android.bp b/microdroid/Android.bp
index 6e9a6de..3bbab13 100644
--- a/microdroid/Android.bp
+++ b/microdroid/Android.bp
@@ -90,9 +90,6 @@
"microdroid_property_contexts",
"microdroid_service_contexts",
- "microdroid_kexec",
- "microdroid_crashdump_kernel",
-
// TODO(b/195425111) these should be added automatically
"libcrypto", // used by many (init_second_stage, microdroid_manager, toybox, etc)
"liblzma", // used by init_second_stage
@@ -113,6 +110,8 @@
"apkdmverity",
"authfs",
"authfs_service",
+ "microdroid_crashdump_kernel",
+ "microdroid_kexec",
"microdroid_manager",
"zipfuse",
],
diff --git a/microdroid/kdump/Android.bp b/microdroid/kdump/Android.bp
index ffbfcce..390886b 100644
--- a/microdroid/kdump/Android.bp
+++ b/microdroid/kdump/Android.bp
@@ -7,6 +7,7 @@
stem: "kexec",
srcs: ["kexec.c"],
installable: false,
+ compile_multilib: "64",
}
cc_binary {
@@ -15,11 +16,16 @@
srcs: ["crashdump.c"],
static_executable: true,
installable: false,
+ compile_multilib: "64",
}
android_filesystem {
name: "microdroid_crashdump_initrd",
- deps: ["microdroid_crashdump"],
+ multilib: {
+ lib64: {
+ deps: ["microdroid_crashdump"],
+ },
+ },
dirs: [
"dev",
"proc",
diff --git a/microdroid/kdump/crashdump.c b/microdroid/kdump/crashdump.c
index 7f892f9..a606d43 100644
--- a/microdroid/kdump/crashdump.c
+++ b/microdroid/kdump/crashdump.c
@@ -80,7 +80,7 @@
if (fstat(vmcore, &statbuf) == -1) {
FAIL("Failed to stat %s", DUMP_SOURCE);
}
- printf("Size is %ld bytes\n", (long)statbuf.st_size);
+ printf("Size is %ld bytes\n", statbuf.st_size);
// sendfile(2) is faster, can't be used because /proc/vmcore doesn't support splice_read
size_t dumped = 0;
diff --git a/microdroid/kdump/kernel/Android.bp b/microdroid/kdump/kernel/Android.bp
index 65cb2be..093e7c7 100644
--- a/microdroid/kdump/kernel/Android.bp
+++ b/microdroid/kdump/kernel/Android.bp
@@ -12,7 +12,7 @@
prebuilt_etc {
name: "microdroid_crashdump_kernel",
- src: "empty", // for other 32-bit architectures like x86 and arm
+ compile_multilib: "64",
arch: {
arm64: {
src: "arm64/kernel-5.15",