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)