Estou tentando depurar um kernel do Linux usando Virtualbox
, mas não consigo trabalhar.
Aqui está o que eu fiz.
Compile o Kernel com a seguinte configuração
CONFIG_HAVE_ARCH_KGDB=y
CONFIG_KGDB=y
CONFIG_KGDB_SERIAL_CONSOLE=y
CONFIG_KGDB_TESTS=y
CONFIG_KGDB_TESTS_ON_BOOT=y
CONFIG_KGDB_TESTS_BOOT_STRING="V1F100"
CONFIG_KGDB_LOW_LEVEL_TRAP=y
CONFIG_KGDB_KDB=y
CONFIG_KDB_DEFAULT_ENABLE=0x1
CONFIG_KDB_KEYBOARD=y
CONFIG_KDB_CONTINUE_CATASTROPHIC=0
CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y
Instale o kernel compilado.
Adicione argumentos de inicialização
kgdbwait kgdboc=ttyS1,115200
E não espera por KGDB
. Mas quando tento usar apenas uma porta serial para obter a saída do processo de inicialização usando console=tty0 console=ttyS0,115200
, ele funciona.
O kernel é Linux/x86 4.9.16 Kernel
(Kali linux).
Tags virtualbox linux linux-kernel kgdb