From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id 1wdZEouo+GkP6BIAWB0awg (envelope-from ) for ; Mon, 04 May 2026 10:09:15 -0400 Authentication-Results: simark.ca; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256 header.s=Intel header.b=l6R5Ac7K; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 37F621E067; Mon, 04 May 2026 10:09:15 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,RCVD_IN_VALIDITY_CERTIFIED_BLOCKED, RCVD_IN_VALIDITY_RPBL_BLOCKED,RCVD_IN_VALIDITY_SAFE_BLOCKED autolearn=ham autolearn_force=no version=4.0.1 Received: from vm01.sourceware.org (vm01.sourceware.org [38.145.34.32]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 9F11D1E067 for ; Mon, 04 May 2026 10:09:14 -0400 (EDT) Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id 812274BA7998 for ; Mon, 4 May 2026 14:09:13 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 812274BA7998 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256 header.s=Intel header.b=l6R5Ac7K Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.12]) by sourceware.org (Postfix) with ESMTPS id C32B94BA2E1F for ; Mon, 4 May 2026 14:08:48 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org C32B94BA2E1F Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org C32B94BA2E1F Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=198.175.65.12 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1777903729; cv=none; b=btD032myZyHNwhe5dzzh0Le1/LuYchcAEzkpLyGUFr0pJ1nkM4ctUc2QcSXZ43hYLwUtQTqKK+zwNadnL+6fHHCUa4wVD/5KKcwpndLG0Vqrw33I5EM911QCs4hQSSRdQ07xFqk5GdywOIvarO+W3gVmDrD00Rdm9NyyQVo7Ng0= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1777903729; c=relaxed/simple; bh=M+t73vTv5vx/dHnnHvKrIlzVJJh/x+X5AZjZ2sgGZ+s=; h=DKIM-Signature:From:To:Subject:Date:Message-Id:MIME-Version; b=Yse1v86nRDdAKAibr9Xa9kFqw1L4aU+ToXa1R3zX00tJLKDh9bLlcaAcMvSjSw1bhbE7ygmAUOkgwjQmt6DNmAkZIYJSYQCL0an0GHY3ebHWzeBk62NXqBXUSB3evCsZruGt9Kcphk6WEFlUWMXHUP36Dn97ZkSSvi89HbfD3cU= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org C32B94BA2E1F DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1777903730; x=1809439730; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=M+t73vTv5vx/dHnnHvKrIlzVJJh/x+X5AZjZ2sgGZ+s=; b=l6R5Ac7Ka0bbo+QjcBftAwlU2ePT355Eq5zI8CFPkLP/7F027omtuMzp 4Y14ip3548FZ+kw0RhtVAOpWi88KxQaUsApKgl5UzqRw8Rj7WRuMgJ2Z/ k2iRfEaQ3hC7mMUk7LAL/xdPJ6c0lvQ+w4JTNz/lGIb8nNpZH2hYFTi/R EQXYbYmLRUuHtYYw6xhy2r7L+dzHzAcS6/hWrt0voHv4wrlLxZRrFraas Euv3SwYV63+v7BM4MkTQj9j+9g6KJ4Y6MN/+/fE6jjX029IY0//JcE6Qr +nXarpxePwK7MmQkDgdbLjrxRDZhQoBUQ5IK2HBV4RXHPYviZya7dDW75 Q==; X-CSE-ConnectionGUID: 9KrVbzftQd+wg5knTdF9gw== X-CSE-MsgGUID: kca5RnRgQXuaBYiXAcK3Yg== X-IronPort-AV: E=McAfee;i="6800,10657,11776"; a="90218307" X-IronPort-AV: E=Sophos;i="6.23,215,1770624000"; d="scan'208";a="90218307" Received: from fmviesa010.fm.intel.com ([10.60.135.150]) by orvoesa104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 May 2026 07:08:48 -0700 X-CSE-ConnectionGUID: 4pt3TNkjRoGpeGII8xxytg== X-CSE-MsgGUID: 9AZhligISyCKUUS8tfqhDg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.23,215,1770624000"; d="scan'208";a="231162085" Received: from gkldtt-dev-004.igk.intel.com (HELO localhost) ([10.123.221.202]) by fmviesa010-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 May 2026 07:08:46 -0700 From: Markus Metzger To: gdb-patches@sourceware.org Cc: Keith Seitz , Eli Zaretskii Subject: [PATCH v3] gdb, btrace: support libipt v2.2 events Date: Mon, 4 May 2026 14:08:44 +0000 Message-Id: <20260504140844.1108199-1-markus.t.metzger@intel.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces~public-inbox=simark.ca@sourceware.org Add support for printing new events added in libipt v2.2 originating from Event Tracing in combination with Flexible Return and Event Delivery (FRED) and from Trigger Tracing. Reviewed-By: Keith Seitz Reviewed-By: Eli Zaretskii --- gdb/NEWS | 3 +++ gdb/btrace.c | 67 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 70 insertions(+) diff --git a/gdb/NEWS b/gdb/NEWS index e233906153a..4464135ef71 100644 --- a/gdb/NEWS +++ b/gdb/NEWS @@ -75,6 +75,9 @@ * The Windows native target now supports scheduler-locking. E.g., "set scheduler-locking on" now works. Previously it gave an error. +* GDB now supports libipt v2.2 events originating from Event Tracing on a + FRED-enabled system and from Trigger Tracing. + * New targets GNU/Linux/MicroBlaze (gdbserver) microblazeel-*linux* diff --git a/gdb/btrace.c b/gdb/btrace.c index 965e2654c7d..73b7fc313b7 100644 --- a/gdb/btrace.c +++ b/gdb/btrace.c @@ -1597,6 +1597,59 @@ handle_pt_insn_events (struct btrace_thread_info *btinfo, break; } #endif /* (LIBIPT_VERSION >= 0x201) */ + +#if (LIBIPT_VERSION >= 0x202) + case ptev_trig: + { + std::string aux_string = std::string (_("trig: trbv = ")) + + hex_string (event.variant.trig.trbv); + + if (event.variant.trig.mult != 0) + aux_string += std::string (", mult"); + + if (event.ip_suppressed == 0) + { + pc = event.variant.trig.ip; + aux_string += std::string (", ip = ") + hex_string (*pc); + } + + if (event.variant.trig.icnt != 0) + aux_string += std::string (", icnt = ") + + hex_string (event.variant.trig.icnt); + + handle_pt_aux_insn (btinfo, aux_string, pc); + break; + } + + case ptev_swintr: + { + std::string aux_string = std::string (_("swintr: vector = ")) + + hex_string (event.variant.swintr.vector); + + if (event.ip_suppressed == 0) + { + pc = event.variant.swintr.ip; + aux_string += std::string (", ip = ") + hex_string (*pc); + } + + handle_pt_aux_insn (btinfo, aux_string, pc); + break; + } + + case ptev_syscall: + { + std::string aux_string = std::string (_("syscall")); + + if (event.ip_suppressed == 0) + { + pc = event.variant.syscall.ip; + aux_string += std::string (": ip = ") + hex_string (*pc); + } + + handle_pt_aux_insn (btinfo, aux_string, pc); + break; + } +#endif /* (LIBIPT_VERSION >= 0x202) */ } } #endif /* defined (HAVE_PT_INSN_EVENT) */ @@ -3025,6 +3078,20 @@ pt_print_packet (const struct pt_packet *packet) packet->payload.evd.payload); break; #endif /* (LIBIPT_VERSION >= 0x201) */ + +#if (LIBIPT_VERSION >= 0x202) + case ppt_trig: + if (packet->payload.trig.icntv == 0) + gdb_printf ("trig 0x%x%s%s", packet->payload.trig.trbv, + packet->payload.trig.ip ? " ip" : "", + packet->payload.trig.mult ? " mult" : ""); + else + gdb_printf ("trig 0x%x%s%s icnt: %u", packet->payload.trig.trbv, + packet->payload.trig.ip ? " ip" : "", + packet->payload.trig.mult ? " mult" : "", + packet->payload.trig.icnt); + break; +#endif /* (LIBIPT_VERSION >= 0x202) */ } } -- 2.34.1 Intel Deutschland GmbH Registered Address: Dornacher Strasse 1, 85622 Feldkirchen, Germany Tel: +49 89 991 430, www.intel.de Managing Directors: Harry Demas, Jeffrey Schneiderman, Yin Chong Sorrell Chairperson of the Supervisory Board: Nicole Lau Registered Seat: Munich Commercial Register: Amtsgericht Muenchen HRB 186928