From: Andreas Fritiofson Date: Wed, 19 Oct 2011 22:21:33 +0000 (+0200) Subject: rtos: remove broken code for handling the deprecated qP packet X-Git-Tag: v0.6.0-rc1~523 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=6b209e74897c5a7dc2ff72bb598e898437038c7b;p=openocd rtos: remove broken code for handling the deprecated qP packet Change-Id: Icca522c1e2a2877abb20665b171c61079b1d8f48 Signed-off-by: Andreas Fritiofson Reviewed-on: http://openocd.zylin.com/37 Tested-by: jenkins Reviewed-by: Peter Stuge --- diff --git a/src/rtos/rtos.c b/src/rtos/rtos.c index 8591007c..8a59fd34 100644 --- a/src/rtos/rtos.c +++ b/src/rtos/rtos.c @@ -132,91 +132,7 @@ int gdb_thread_packet(struct connection *connection, char *packet, int packet_si { struct target *target = get_target_from_connection(connection); - if (strstr(packet, "qP")) - { - #define TAG_THREADID 1 /* Echo the thread identifier */ - #define TAG_EXISTS 2 /* Is this process defined enough to - fetch registers and its stack */ - #define TAG_DISPLAY 4 /* A short thing maybe to put on a window */ - #define TAG_THREADNAME 8 /* string, maps 1-to-1 with a thread is */ - #define TAG_MOREDISPLAY 16 /* Whatever the kernel wants to say about */ - - // TODO: need to scanf the mode variable (or it with the tags), and the threadid - - unsigned long mode; - threadid_t threadid = 0; - struct thread_detail* detail; - sscanf(packet, "qP%8lx%16" SCNx64, &mode, &threadid); - - - int found = -1; - - if ((target->rtos != NULL) && (target->rtos->thread_details - != NULL)) { - int thread_num; - for (thread_num = 0; thread_num - < target->rtos->thread_count; thread_num++) { - if (target->rtos->thread_details[thread_num].threadid - == threadid) { - if (target->rtos->thread_details[thread_num].exists) { - found = thread_num; - } - } - } - } - if (found == -1) { - gdb_put_packet(connection, "E01", 3); // thread not found - return ERROR_OK; - } - - detail = &target->rtos->thread_details[found]; - - if ( detail->display_str != NULL ) - { - mode &= TAG_DISPLAY; - } - if ( detail->thread_name_str != NULL ) - { - mode &= TAG_THREADNAME; - } - if ( detail->extra_info_str != NULL ) - { - mode &= TAG_MOREDISPLAY; - } - - - mode &= TAG_THREADID | TAG_EXISTS; - - char thread_str[1000]; - - sprintf(thread_str, "%08lx", mode); - sprintf(thread_str, "%016" PRIx64, threadid); - - - if (mode & TAG_THREADID) { - sprintf(thread_str, "%08" PRIx32 "10%016" PRIx64, TAG_THREADID, threadid); - } - if (mode & TAG_EXISTS) { - sprintf(thread_str, "%08" PRIx32 "08%08" PRIx32, TAG_EXISTS, (detail->exists==true)?1:0); - } - if (mode & TAG_DISPLAY) { - sprintf(thread_str, "%08" PRIx32 "%02x%s", TAG_DISPLAY, (unsigned char)strlen(detail->display_str), detail->display_str ); - } - if (mode & TAG_MOREDISPLAY) { - sprintf(thread_str, "%08" PRIx32 "%02x%s", TAG_MOREDISPLAY, (unsigned char)strlen(detail->extra_info_str), detail->extra_info_str ); - } - if (mode & TAG_THREADNAME) { - sprintf(thread_str, "%08" PRIx32 "%02x%s", TAG_THREADNAME, (unsigned char)strlen(detail->thread_name_str), detail->thread_name_str ); - } - - //gdb_put_packet(connection, tmpstr, sizeof(tmpstr)-1); - gdb_put_packet(connection, thread_str, strlen(thread_str)); - - // gdb_put_packet(connection, "", 0); - // gdb_put_packet(connection, "OK", 2); // all threads alive - return ERROR_OK; - } - else if (strstr(packet, "qThreadExtraInfo,")) + if (strstr(packet, "qThreadExtraInfo,")) { if ((target->rtos != NULL) && (target->rtos->thread_details != NULL) && (target->rtos->thread_count != 0)) {