Skip ramdump when running Microdroid with GKI as kernel

The android15-6.6 GKI defconfig doesn't have CONFIG_KEXEC_FILE enabled,
which means that we can't load Microdroid crashkernel. While we are
going to look into enabling this option for android16 GKIs, in the
meantime we will disable the crashkernel for Microdroid VMs that run
with android15-6.6 GKI as guest kernel.

Bug: 343397308
Bug: 302467077
Test: locally cherry-pick c83460f8a7601378a8765a0c6cdf5f4067701423
Test: atest MicrodroidTests
Test: atest MicrodroidHostTestCases
Test: run vm run-microdroid --gki android15-6.6
Test: run vm run-microdroid --gki android15-6.6 --protected
Change-Id: I1c092ebd4968476b73a22166932b2c01dc40b1fc
diff --git a/virtualizationmanager/src/aidl.rs b/virtualizationmanager/src/aidl.rs
index 2df4fd7..0055b3b 100644
--- a/virtualizationmanager/src/aidl.rs
+++ b/virtualizationmanager/src/aidl.rs
@@ -463,7 +463,7 @@
 
         let debug_config = DebugConfig::new(config);
 
-        let ramdump = if debug_config.is_ramdump_needed() {
+        let ramdump = if !uses_gki_kernel(config) && debug_config.is_ramdump_needed() {
             Some(prepare_ramdump_file(&temporary_directory)?)
         } else {
             None
@@ -869,6 +869,16 @@
     SUPPORTED_OS_NAMES.contains(os_name)
 }
 
+fn uses_gki_kernel(config: &VirtualMachineConfig) -> bool {
+    if !cfg!(vendor_modules) {
+        return false;
+    }
+    match config {
+        VirtualMachineConfig::RawConfig(_) => false,
+        VirtualMachineConfig::AppConfig(config) => config.osName.starts_with("microdroid_gki-"),
+    }
+}
+
 fn load_app_config(
     config: &VirtualMachineAppConfig,
     debug_config: &DebugConfig,