From 1645fdfb42e2a87f8049f2d0f2b43f201e1e99e8 Mon Sep 17 00:00:00 2001 From: Max Wash Date: Mon, 23 Feb 2026 21:54:40 +0000 Subject: [PATCH] cmake: disable kvm when debugging --- arch/x86_64/QEMU.cmake | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/arch/x86_64/QEMU.cmake b/arch/x86_64/QEMU.cmake index a50fb9b..4df767b 100644 --- a/arch/x86_64/QEMU.cmake +++ b/arch/x86_64/QEMU.cmake @@ -9,10 +9,11 @@ find_program(GDB gdb) set(patched_kernel ${CMAKE_CURRENT_BINARY_DIR}/kernel/${kernel_name}.elf32) set(generic_flags -m 1G) +set(no_debug_flags) if (${CMAKE_HOST_SYSTEM_NAME} STREQUAL "Linux") message(STATUS "QEMU: Enabling KVM acceleration") - set(generic_flags ${generic_flags} -enable-kvm) + set(no_debug_flags ${no_debug_flags} -enable-kvm) else () message(STATUS "QEMU: Host system is not Linux. KVM acceleration unavailable") endif () @@ -33,7 +34,7 @@ add_custom_target(run-kernel ${QEMU} -kernel ${patched_kernel} -initrd ${sys_dir}/${bsp_name} - ${generic_flags} + ${generic_flags} ${no_debug_flags} -serial stdio --append kernel.early-console=ttyS0 USES_TERMINAL @@ -44,7 +45,7 @@ add_custom_target(run-kernel-monitor ${QEMU} -kernel $ -initrd ${sys_dir}/${bsp_name} - ${generic_flags} + ${generic_flags} ${no_debug_flags} -monitor stdio USES_TERMINAL DEPENDS ${kernel_name} bsp) @@ -55,7 +56,7 @@ if (image_cdrom) COMMAND ${QEMU} -cdrom ${image_cdrom} - ${generic_flags} + ${generic_flags} ${no_debug_flags} -serial stdio USES_TERMINAL DEPENDS ${image_cdrom}) @@ -99,9 +100,9 @@ elseif (GDB) -initrd ${sys_dir}/${bsp_name} ${generic_flags} -s -S & - ${GDB} - -o "file ${CMAKE_BINARY_DIR}/kernel/${kernel_name}.debug" - -o "remote localhost:1234" + ${GDB} -tui + -ex "file ${CMAKE_BINARY_DIR}/kernel/${kernel_name}.debug" + -ex "target remote localhost:1234" USES_TERMINAL DEPENDS ${patched_kernel} bsp) @@ -114,10 +115,9 @@ elseif (GDB) ${generic_flags} -s -S & ${GDB} -tui - -s "${CMAKE_BINARY_DIR}/kernel/${kernel_name}.debug" + -ex "file ${CMAKE_BINARY_DIR}/kernel/${kernel_name}.debug" -ex "target remote localhost:1234" USES_TERMINAL DEPENDS ${image_cdrom}) endif () endif () -