Depuração do kernel em execução no destino AMD do host Intel - como devolver o controle ao gdb?

2

Eu compilei o kernel 3.13.0-55 no Ubuntu em máquinas AMD e Intel. Eu tentei copiar o kernel compilado para o destino da Intel, mas ele não inicializa com esse. Portanto, eu compilei a mesma versão do kernel naquela Intel. Eu posso rodar este kernel na Intel e a Intel espera que o kgdb seja anexado a ele. Eu faço isso na AMD com

target remote /dev/ttyS0

e eu sou capaz de entrar no código do kernel através da conexão serial. Eu continuo então, a Intel continua a rodar, e não posso mais retornar o controle para o depurador rodando na AMD. Escrevendo g para / proc / sysrq-trigger interrompe a Intel, mas o controle não é retornado para o gdb da AMD.

Isto é porque não é EXATAMENTE a mesma versão (não copiada) do kernel? Se sim, como devo compilar o kernel correto para poder depurar a Intel da AMD? Enable Magic SysRq está definido na configuração do kernel.

EDITAR:

Embora não funcione quando eu tento depurar a Intel do Amd (ambos rodando o mesmo kernel 3.13.11-ckt20 SMP 2015 x86_64 x86_64 x86_64 GNU / Linux): alvo - Intel (R) Core (TM) 2 Duo CPU E8500 @ 3.16GHz host - AMD FX (tm) -4100 Processador Quad-Core

funciona na direção oposta: alvo - host de processador AMD FX (tm) -4100 Quad-Core - CPU Intel (R) Core ™ 2 Duo E8500 @ 3.16GHz

Talvez esteja relacionado a pontos de interrupção de hardware, registros, implementação de CPU?

    
por 4pie0 01.07.2015 / 15:38

0 respostas