From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) by sourceware.org (Postfix) with ESMTPS id 9D1A93858D39 for ; Thu, 3 Mar 2022 14:40:26 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 9D1A93858D39 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=palves.net Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-wm1-f47.google.com with SMTP id bg16-20020a05600c3c9000b00380f6f473b0so5452438wmb.1 for ; Thu, 03 Mar 2022 06:40:26 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=grRkl4E+tjhnNVZdSnL7m6452K2fNzI8trxEaOyK0Ew=; b=6uSdRN0AcQ1TAndAY+6gLilzQVvSIyrc3lbJcXbVh4ftXvx49VcQ6vHy0EQW/RF0Ik d1GC7XOQgRYIKIl+KenJ4SHEHBJFfwa95YFGRYBEwwpauAgfZE2Fk2jzKkB/cJIM1cmF lvlowwr48xVjb0UbDktD0cm4h9UKBOv3Q865x5mUhRfTidMl0NBbvuC8wKI9IjvlTHlw rt2tj85n8K9zmu5MEEEJSAhoND2Un+2AhWd/2K60m49g6SFuKsqol4Yjel+JHde0Ps7T +L1YTm1wOzEGgKwWEkxzZKoYZc0PccWtgkaMqJcK88ExbBo+4eWTJkgE1hnlhCGtCcsf xOtg== X-Gm-Message-State: AOAM533mwj7G7uEhRMG863ei7WPTLSfW8DVcGSUZhwdWp48ei6Y97JPI 1cPiIdkTK42ff6GgIl1Cyf8R8LeGuR0= X-Google-Smtp-Source: ABdhPJzkZreIVVezoeIUV/1swYg+WvC28tlZIzjFbb+JR2AHjpjtzbSI3SP1W4uegftlkvApoE7FnA== X-Received: by 2002:a05:600c:35d1:b0:37c:d45c:af57 with SMTP id r17-20020a05600c35d100b0037cd45caf57mr4014937wmq.149.1646318424930; Thu, 03 Mar 2022 06:40:24 -0800 (PST) Received: from localhost ([2001:8a0:f924:2600:209d:85e2:409e:8726]) by smtp.gmail.com with ESMTPSA id p16-20020adff210000000b001f062b80091sm1112517wro.34.2022.03.03.06.40.23 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 03 Mar 2022 06:40:23 -0800 (PST) From: Pedro Alves To: gdb-patches@sourceware.org Subject: [PATCH 01/11] Fix gdbserver/linux target_waitstatus logging assert Date: Thu, 3 Mar 2022 14:40:10 +0000 Message-Id: <20220303144020.3601082-2-pedro@palves.net> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20220303144020.3601082-1-pedro@palves.net> References: <20220303144020.3601082-1-pedro@palves.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-9.8 required=5.0 tests=BAYES_00, FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM, GIT_PATCH_0, HEADER_FROM_DIFFERENT_DOMAINS, KAM_DMARC_STATUS, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 03 Mar 2022 14:40:28 -0000 Turning on debug output in gdbserver leads to an assertion failure if gdbserver reports a non-signal event: [threads] wait_1: LWP 3273770: extended event with waitstatus status->kind = EXECD, execd_pathname = gdb.threads/non-ldr-exc-1/non-ldr-exc-1 [threads] wait_1: Hit a non-gdbserver trap event. ../../src/gdbserver/../gdb/target/waitstatus.h:365: A problem internal to GDBserver has been detected. sig: Assertion `m_kind == TARGET_WAITKIND_STOPPED || m_kind == TARGET_WAITKIND_SIGNALLED' failed. Fix it in the obvious way, using target_waitstatus::to_string(), resulting in, for example: [threads] wait_1: ret = LWP 1542412.1542412, status->kind = STOPPED, sig = GDB_SIGNAL_TRAP Change-Id: Ia4832f9b4fa39f4af67fcaf21fd4d909a285a645 --- gdbserver/linux-low.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gdbserver/linux-low.cc b/gdbserver/linux-low.cc index 301e42a36f3..e7c01420ae3 100644 --- a/gdbserver/linux-low.cc +++ b/gdbserver/linux-low.cc @@ -3493,9 +3493,9 @@ linux_process_target::wait_1 (ptid_t ptid, target_waitstatus *ourstatus, gdb_assert (step_over_bkpt == null_ptid); - threads_debug_printf ("ret = %s, %d, %d", + threads_debug_printf ("ret = %s, %s", target_pid_to_str (ptid_of (current_thread)).c_str (), - ourstatus->kind (), ourstatus->sig ()); + ourstatus->to_string ().c_str ()); if (ourstatus->kind () == TARGET_WAITKIND_EXITED) return filter_exit_event (event_child, ourstatus); -- 2.26.2