From patchwork Wed Oct 26 07:27:36 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adrian Hunter X-Patchwork-Id: 11092 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp108926wru; Wed, 26 Oct 2022 00:32:55 -0700 (PDT) X-Google-Smtp-Source: AMsMyM48C87jDYv2E42UKebhh4lNdKQT/byg2M106j3wq44b0PYlxHsr52Nk8KOIC7cz8vxDK9nJ X-Received: by 2002:a65:5b0b:0:b0:462:da7a:1ded with SMTP id y11-20020a655b0b000000b00462da7a1dedmr19393469pgq.605.1666769575579; Wed, 26 Oct 2022 00:32:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666769575; cv=none; d=google.com; s=arc-20160816; b=CqcxA+Y5lpSP0sAIVN0fojkt9AAh2y14aN8G8lWiqADoCMMnIyNnFGHV92qmkiCcKt iNrV3E2wlqxA8LYtR18SXaeExCeRoSHa6HpS1Gb+xW+YQRd2qiMrIcleeRqURiOUIfNQ 0FRJG4Yt/wDot23Rp4PCWqOPBJrR94DgdRVsUX4In72JZH4USnVnTZahX8pjueoF90ht +dlJopSubdzx0hUmZTRZCCtiPyq/kDhTsu3niI/iBIjrGSZqi0pPVTKkIhYzBUV1eZsO xN21pveKL5v39R/wJEcnY0GOBc1Nwqk870ju+IZ5+L3DGvWLN/WJ1G68qzdY4GfqLjtp sWVw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:organization :mime-version:message-id:date:subject:cc:to:from:dkim-signature; bh=ruobbv6XJQnA5oddIc5xUWy1bb3NXAte7v2wrAZKf18=; b=k4Qu1cmk0eP/W2yTbj7N/oTHzEV+SSgkhJ8sbOh9u7CzEBP24FtxBd4VBWX97n3rCv K+9I+tzhIakjdt4TyciO04pGbvA8X5g6j2J6xEvQP+x+b6BW+21WIlhbaaTnnxqIUqPi JrNM57oJw8UlLdY4yLextlpTDI7k2gg7+1vwtw40HacEowgWGBGtREwi85ZVs+tTOOg6 Yx2rRNXaLu0gvuJ1K7BGIHwRmdBc1yILE+cZsCW6db/47Ji6kQHsD07dhua9OT+SXXnJ QED8EnqFVCHQyklWImLCDUrfHg29a6dwzNORu43Ex1q0tMhXcmiatOnGuTAqkHKmJPVZ 5juA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=GWMixoIr; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id z1-20020a170903018100b00186b766d6cbsi6689568plg.414.2022.10.26.00.32.43; Wed, 26 Oct 2022 00:32:55 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=GWMixoIr; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232740AbiJZH2b (ORCPT + 99 others); Wed, 26 Oct 2022 03:28:31 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57514 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231649AbiJZH23 (ORCPT ); Wed, 26 Oct 2022 03:28:29 -0400 Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9C119B8C15; Wed, 26 Oct 2022 00:28:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1666769308; x=1698305308; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=BtdY9zOLzOchXhwl2IJHG9U9vbffqPHfgouauBD7/4c=; b=GWMixoIruoNS9N8IkSPrcMzV8z0sSp//IiJDvz3CTRj8suroGj6mNzIH D86o6/XGvbFYAOLXmT4Z9vcvROkURb9gwei9Pp8QXQJBwNLJYpuH2++VJ LAaEEOKLsleAWaKTbJvnddbzHe186v7Cko3D9pPbjfto3FMy80J67qX9k /oMDgJwNbqHH6Ga40K2xqq8lPUCEJNA3TQSexMwS1unUMEmYqgFnFnyfM zeBveBXI8Unj7GwANEI4xBgpXzzzQJcObtGgxNoAnl5n7sFDhLP3tj1tR n5Jt5g3Q89e0xEeDGr7kwLKrAj5XNWO0N8yZXUnLB1llaVzMRBgQvHnbZ w==; X-IronPort-AV: E=McAfee;i="6500,9779,10511"; a="307876250" X-IronPort-AV: E=Sophos;i="5.95,214,1661842800"; d="scan'208";a="307876250" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Oct 2022 00:28:06 -0700 X-IronPort-AV: E=McAfee;i="6500,9779,10511"; a="806949236" X-IronPort-AV: E=Sophos;i="5.95,213,1661842800"; d="scan'208";a="806949236" Received: from ahunter6-mobl1.ger.corp.intel.com (HELO ahunter-VirtualBox.home\044ger.corp.intel.com) ([10.252.53.127]) by orsmga005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Oct 2022 00:27:48 -0700 From: Adrian Hunter To: Arnaldo Carvalho de Melo Cc: Jiri Olsa , Namhyung Kim , Ian Rogers , linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org Subject: [PATCH] perf auxtrace: Fix address filter symbol name match for modules Date: Wed, 26 Oct 2022 10:27:36 +0300 Message-Id: <20221026072736.2982-1-adrian.hunter@intel.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Organization: Intel Finland Oy, Registered Address: PL 281, 00181 Helsinki, Business Identity Code: 0357606 - 4, Domiciled in Helsinki X-Spam-Status: No, score=-7.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_NONE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747734574539626451?= X-GMAIL-MSGID: =?utf-8?q?1747734574539626451?= For modules, names from kallsyms__parse() contain the module name which meant that module symbols did not match exactly by name. Fix by matching the name string up to the separating tab character. Fixes: 1b36c03e3569 ("perf record: Add support for using symbols in address filters") Cc: stable@vger.kernel.org Signed-off-by: Adrian Hunter --- tools/perf/util/auxtrace.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/tools/perf/util/auxtrace.c b/tools/perf/util/auxtrace.c index b59c278fe9ed..c50eb2bfc518 100644 --- a/tools/perf/util/auxtrace.c +++ b/tools/perf/util/auxtrace.c @@ -2321,11 +2321,19 @@ struct sym_args { bool near; }; +static bool kern_sym_name_match(const char *kname, const char *name) +{ + size_t n = strlen(name); + + return !strcmp(kname, name) || + (!strncmp(kname, name, n) && kname[n] == '\t'); +} + static bool kern_sym_match(struct sym_args *args, const char *name, char type) { /* A function with the same name, and global or the n'th found or any */ return kallsyms__is_function(type) && - !strcmp(name, args->name) && + kern_sym_name_match(name, args->name) && ((args->global && isupper(type)) || (args->selected && ++(args->cnt) == args->idx) || (!args->global && !args->selected));