From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by sourceware.org (Postfix) with ESMTPS id 2D3AC3858C2D for ; Tue, 1 Feb 2022 12:13:01 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 2D3AC3858C2D X-IronPort-AV: E=McAfee;i="6200,9189,10244"; a="247448005" X-IronPort-AV: E=Sophos;i="5.88,333,1635231600"; d="scan'208";a="247448005" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Feb 2022 04:12:59 -0800 X-IronPort-AV: E=Sophos;i="5.88,333,1635231600"; d="scan'208";a="537784471" Received: from labpc2407.iul.intel.com (HELO localhost) ([172.28.50.61]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Feb 2022 04:12:58 -0800 From: Markus Metzger To: gdb-patches@sourceware.org Cc: Simon Sobisch Subject: [PATCH] gdb, btrace: improve error messages Date: Tue, 1 Feb 2022 13:10:46 +0100 Message-Id: <20220201121046.2160219-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-Spam-Status: No, score=-9.0 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_NONE, 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: Tue, 01 Feb 2022 12:13:03 -0000 When trying to use 'record btrace' on a system that does not support it, the error message isn't as clear as it could be. See https://sourceware.org/pipermail/gdb/2022-January/049870.html. Improve the error message in a few cases. Reported-by: Simon Sobisch --- gdb/nat/linux-btrace.c | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/gdb/nat/linux-btrace.c b/gdb/nat/linux-btrace.c index d8880756aad..13ed493495d 100644 --- a/gdb/nat/linux-btrace.c +++ b/gdb/nat/linux-btrace.c @@ -429,7 +429,7 @@ diagnose_perf_event_open_fail () static const char filename[] = "/proc/sys/kernel/perf_event_paranoid"; gdb_file_up file = gdb_fopen_cloexec (filename, "r"); if (file.get () == nullptr) - break; + error (_("Your system does not support process recording.")); int level, found = fscanf (file.get (), "%d", &level); if (found == 1 && level > 2) @@ -571,7 +571,20 @@ perf_event_pt_event_type () errno = 0; gdb_file_up file = gdb_fopen_cloexec (filename, "r"); if (file.get () == nullptr) - error (_("Failed to open %s: %s."), filename, safe_strerror (errno)); + switch (errno) + { + case EACCES: + case EFAULT: + case EPERM: + error (_("You do not have permission to use Intel PT.")); + + case ENOTDIR: + case ENOENT: + error (_("Your system does not support Intel PT.")); + + default: + error (_("Failed to open %s: %s."), filename, safe_strerror (errno)); + } int type, found = fscanf (file.get (), "%d", &type); if (found != 1) -- 2.34.1 Intel Deutschland GmbH Registered Address: Am Campeon 10, 85579 Neubiberg, Germany Tel: +49 89 99 8853-0, www.intel.de Managing Directors: Christin Eisenschmid, Sharon Heck, Tiffany Doon Silva Chairperson of the Supervisory Board: Nicole Lau Registered Office: Munich Commercial Register: Amtsgericht Muenchen HRB 186928