On Tue, Nov 21, 2017 at 3:11 PM, Mihail Abakumov <mikhail.abaku...@ispras.ru> wrote: [...] > diff --git a/windbgstub.c b/windbgstub.c > index 36372c0ea5..3bcf6a8cbb 100755 > --- a/windbgstub.c > +++ b/windbgstub.c > @@ -224,6 +224,14 @@ static void > windbg_process_manipulate_packet(ParsingContext *ctx) > kd_api_query_memory(cpu, &ctx->data); > break; > > + case DbgKdGetContextExApi: > + kd_api_get_context_ex(cpu, &ctx->data); > + break; > + > + case DbgKdSetContextExApi: > + kd_api_set_context_ex(cpu, &ctx->data); > + break; > + > default: > kd_api_unsupported(cpu, &ctx->data); > break; > @@ -262,12 +270,12 @@ static void > windbg_process_control_packet(ParsingContext *ctx) > > case PACKET_TYPE_KD_RESET: > { > - SizedBuf buf = kd_gen_load_symbols_sc(qemu_get_cpu(0)); > + windbg_send_control_packet(ctx->packet.PacketType); > + windbg_state->ctrl_packet_id = INITIAL_PACKET_ID;
You didn't mention it in the cover email so I'd like to be sure. This is what fixed the initial handshake so it works without -b now, is that correct? Thanks! > + SizedBuf buf = kd_gen_load_symbols_sc(qemu_get_cpu(0)); > windbg_send_data_packet(buf.data, buf.size, > PACKET_TYPE_KD_STATE_CHANGE64); > - windbg_send_control_packet(ctx->packet.PacketType); > - windbg_state->ctrl_packet_id = INITIAL_PACKET_ID; > SBUF_FREE(buf); > break; > } >