From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-io1-xd2f.google.com (mail-io1-xd2f.google.com [IPv6:2607:f8b0:4864:20::d2f]) by sourceware.org (Postfix) with ESMTPS id 653C33858CDA for ; Mon, 12 Jun 2023 19:21:40 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 653C33858CDA Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=adacore.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=adacore.com Received: by mail-io1-xd2f.google.com with SMTP id ca18e2360f4ac-77ad3bba2a9so295172339f.1 for ; Mon, 12 Jun 2023 12:21:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=adacore.com; s=google; t=1686597699; x=1689189699; h=to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=W4H6C8ORTpwSDhPqpyVLz2bSvSrRpVLEILv4OhF0dSw=; b=Ehze/Dl4HMUIQCsY+XrXas9sGY5DkKRUIBqz4A9gIERp5m7W315D6g/Z0tp2eihfrv Lw//O1BJ6blQzoww3nk0FOurRGIkeU3mwlpH7dXcis8l0nau4JBt5NJZhpcuY4PVGE4t ALFZuYmyXCkLT77X57XH+ht5UbE2H/UbWnwhmlmGzetAW94fs//yo+OoRsqQ1kK5f0OM HTURit8plWQoTou+gZfZ/Bo87kc69zhA4NK2OtjgV7KJJlw25ZegqK7fJndKrWXw0ga0 K/F6aegKkEme8kAMY0AZvLV7xeVohZogcp71tOH7hHytFbmwRRM8ufqfofn6LLltY3Lf ZPHA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686597699; x=1689189699; h=to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=W4H6C8ORTpwSDhPqpyVLz2bSvSrRpVLEILv4OhF0dSw=; b=hY95xZG6kc4uJFzEPMo11XPOzjMO6hLFHF1SiNgWjyG83py6K1PP/1AjwtvpZHRu1T axlVsKJ7mLYx7RVf/rx+HPgm/wxB5X97CULgEjBuOovIXXgLUn/hdlhqfZ2NyeW7eWCR HMs7ZWupA3I2Y7ToJY63E+iPlPkGHNq31XoNv8s4zrEiCcbqYIsEcwfoeHa4aoIU6IgO 5YNofRSuydC7N2uKM1T7D873WeiBEjwSSU4L1Ijz+/BRzXVn/ek+Ju10WfD5DpZLsmfG w0H0It6laTWF1s6SdDFoaZXDmPnVS/uYQc9yhUCy/5eZueZADlnJr2Le5ZzAHQAyCiiN GZsQ== X-Gm-Message-State: AC+VfDzkzqZXD1+Ga9P3x9KI4OxGI5t/6ll4eJGun/yGG1gK+LjH+1bR 0L7dI5jJNMMr91/wXbfW5jMyJVniToFnOmlfMBTkhQ== X-Google-Smtp-Source: ACHHUZ4VUSR0A1BbfF1hInAm0e78AEcmGnM8zYtFEby380Rgcx3xacz5OkMslk+5lx4oq+69jxtORQ== X-Received: by 2002:a6b:7413:0:b0:774:99b3:e167 with SMTP id s19-20020a6b7413000000b0077499b3e167mr8820641iog.14.1686597699619; Mon, 12 Jun 2023 12:21:39 -0700 (PDT) Received: from localhost.localdomain (75-166-136-83.hlrn.qwest.net. [75.166.136.83]) by smtp.gmail.com with ESMTPSA id k27-20020a02ccdb000000b0041aaebd2017sm2871283jaq.82.2023.06.12.12.21.39 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 12:21:39 -0700 (PDT) From: Tom Tromey Date: Mon, 12 Jun 2023 13:21:37 -0600 Subject: [PATCH 2/2] Disabling hardware single step in gdbserver MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20230612-sw-single-step-v1-2-c06d648e121b@adacore.com> References: <20230612-sw-single-step-v1-0-c06d648e121b@adacore.com> In-Reply-To: <20230612-sw-single-step-v1-0-c06d648e121b@adacore.com> To: gdb-patches@sourceware.org X-Mailer: b4 0.12.2 X-Spam-Status: No, score=-11.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: This patch gives gdbserver the ability to omit the 's' reply to 'vCont?'. This tells gdb that hardware single-step is definitely not supported, causing it to fall back to using software single-step. This is useful for testing the earlier change to maybe_software_singlestep. --- gdbserver/server.cc | 12 ++++++++---- gdbserver/server.h | 1 + 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/gdbserver/server.cc b/gdbserver/server.cc index c57270175b4..afc18a87770 100644 --- a/gdbserver/server.cc +++ b/gdbserver/server.cc @@ -135,6 +135,7 @@ unsigned long signal_pid; in gdbserver, for the sake of testing GDB against stubs that don't support them. */ bool disable_packet_vCont; +bool disable_packet_vCont_step; bool disable_packet_Tthread; bool disable_packet_qC; bool disable_packet_qfThreadInfo; @@ -3125,9 +3126,10 @@ handle_v_requests (char *own_buf, int packet_len, int *new_packet_len) { strcpy (own_buf, "vCont;c;C;t"); - if (target_supports_hardware_single_step () - || target_supports_software_single_step () - || !cs.vCont_supported) + if (!disable_packet_vCont_step + && (target_supports_hardware_single_step () + || target_supports_software_single_step () + || !cs.vCont_supported)) { /* If target supports single step either by hardware or by software, add actions s and S to the list of supported @@ -3456,7 +3458,7 @@ gdbserver_usage (FILE *stream) " --disable-packet=OPT1[,OPT2,...]\n" " Disable support for RSP packets or features.\n" " Options:\n" - " vCont, T, Tthread, qC, qfThreadInfo and \n" + " vCont, vConts, T, Tthread, qC, qfThreadInfo and\n" " threads (disable all threading packets).\n" "\n" "For more information, consult the GDB manual (available as on-line \n" @@ -3766,6 +3768,8 @@ captured_main (int argc, char *argv[]) { if (strcmp ("vCont", tok) == 0) disable_packet_vCont = true; + else if (strcmp ("vConts", tok) == 0) + disable_packet_vCont_step = true; else if (strcmp ("Tthread", tok) == 0) disable_packet_Tthread = true; else if (strcmp ("qC", tok) == 0) diff --git a/gdbserver/server.h b/gdbserver/server.h index fde7dfe7060..70fd8ff8b55 100644 --- a/gdbserver/server.h +++ b/gdbserver/server.h @@ -68,6 +68,7 @@ void initialize_low (); extern bool server_waiting; extern bool disable_packet_vCont; +extern bool disable_packet_vCont_step; extern bool disable_packet_Tthread; extern bool disable_packet_qC; extern bool disable_packet_qfThreadInfo; -- 2.40.1