qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

gdbstub.c CPU clusters not handled for ThreadInfo packets


From: Fabien Chouteau
Subject: gdbstub.c CPU clusters not handled for ThreadInfo packets
Date: Tue, 2 Jun 2020 18:24:15 +0200

Hi all,

(Luc, I am putting in copy because from the logs it looks like you implemented the multiprocess support)

Using the sifive_u machine on qemu-system-riscv64 which has 2 clusters of 1 and 4 CPUs respectively, when I use the "info threads" command in GDB only one thread is displayed.
This thread is the only CPU of the 1st cluster, the CPUs of cluster 2nd are not listed at all.

Looking at the GDB remote packets (see below) we can see that indeed only one thread is listed (mp01.01). It seems to me that the functions handle_query_first_threads() and handle_query_threads() of gdbstub.c are not handling the new multiprocess implementation. I would like to fix it but I am lost between cpus, processes, threads, etc.

Does anyone have an idea how to fix this?

Regards,

(gdb) info threads
Sending packet: $qfThreadInfo#bb...Ack
Packet received: mp01.01
Sending packet: $qsThreadInfo#c8...Ack
Packet received: l
Sending packet: $qThreadExtraInfo,p1.1#85...Ack
Packet received: 7369666976652d6535312d72697363762d6370752068617274735b305d205b72756e6e696e675d
  Id   Target Id                                            Frame
* 1    Thread 1.1 (sifive-e51-riscv-cpu harts[0] [running]) 0x0000000000001000 in ?? ()
(gdb)


reply via email to

[Prev in Thread] Current Thread [Next in Thread]