Re: [Qemu-devel] [PATCH 19/43] windbg: implemented windbg_process_control_packet

2017-10-03 Thread Ladi Prosek
On Tue, Sep 26, 2017 at 1:05 PM, Mihail Abakumov
 wrote:
> Signed-off-by: Mihail Abakumov 
> Signed-off-by: Pavel Dovgalyuk 
> Signed-off-by: Dmitriy Koltunov 
> ---
>  windbgstub.c |   26 +-
>  1 file changed, 25 insertions(+), 1 deletion(-)
>
> diff --git a/windbgstub.c b/windbgstub.c
> index 3a13d22349..b8053102dd 100755
> --- a/windbgstub.c
> +++ b/windbgstub.c
> @@ -126,7 +126,31 @@ static void windbg_process_data_packet(ParsingContext 
> *ctx)
>  {}
>
>  static void windbg_process_control_packet(ParsingContext *ctx)
> -{}
> +{
> +switch (ctx->packet.PacketType) {
> +case PACKET_TYPE_KD_ACKNOWLEDGE:
> +break;
> +
> +case PACKET_TYPE_KD_RESET:
> +{
> +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;
> +}
> +default:
> +WINDBG_ERROR("Catched unsupported control packet 0x%x",

"caught" instead of "catched", same in patches 20 and 21.

> + ctx->packet.PacketType);
> +
> +windbg_state->ctrl_packet_id = 0;
> +windbg_send_control_packet(PACKET_TYPE_KD_RESEND);
> +break;
> +}
> +}
>
>  static void windbg_ctx_handler(ParsingContext *ctx)
>  {
>



[Qemu-devel] [PATCH 19/43] windbg: implemented windbg_process_control_packet

2017-09-26 Thread Mihail Abakumov
Signed-off-by: Mihail Abakumov 
Signed-off-by: Pavel Dovgalyuk 
Signed-off-by: Dmitriy Koltunov 
---
 windbgstub.c |   26 +-
 1 file changed, 25 insertions(+), 1 deletion(-)

diff --git a/windbgstub.c b/windbgstub.c
index 3a13d22349..b8053102dd 100755
--- a/windbgstub.c
+++ b/windbgstub.c
@@ -126,7 +126,31 @@ static void windbg_process_data_packet(ParsingContext *ctx)
 {}
 
 static void windbg_process_control_packet(ParsingContext *ctx)
-{}
+{
+switch (ctx->packet.PacketType) {
+case PACKET_TYPE_KD_ACKNOWLEDGE:
+break;
+
+case PACKET_TYPE_KD_RESET:
+{
+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;
+}
+default:
+WINDBG_ERROR("Catched unsupported control packet 0x%x",
+ ctx->packet.PacketType);
+
+windbg_state->ctrl_packet_id = 0;
+windbg_send_control_packet(PACKET_TYPE_KD_RESEND);
+break;
+}
+}
 
 static void windbg_ctx_handler(ParsingContext *ctx)
 {