From patchwork Wed Jan 25 17:13:04 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Steven Rostedt X-Patchwork-Id: 48236 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp388634wrn; Wed, 25 Jan 2023 09:16:57 -0800 (PST) X-Google-Smtp-Source: AMrXdXsklcBvSDOhPRXktHYw9vXbCdtn1UDxRjH1wwOYZyF7dZOLz9qQjPqXV3J7+9dvasEgcIXZ X-Received: by 2002:a62:61c4:0:b0:581:a8dc:8f95 with SMTP id v187-20020a6261c4000000b00581a8dc8f95mr31705653pfb.12.1674667016866; Wed, 25 Jan 2023 09:16:56 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1674667016; cv=none; d=google.com; s=arc-20160816; b=nCPalAmSYyFOF5bMRqZhE7uVjKz/CG5ZZV7674L0lHrpmI5wcnbnwNkf1tXf+CfZbV TLlFBnIDJ5zssdeR8H29DyWqo921sHaG7NlKeMh92O3EIN6lO+G3fuFMiRcVKj96io3d c7EZiPsfTvP5vaVSGlzUVrGexrqrLjmfy6P+hm/5xwUbPQfuBN2Mwzcj04Sxtor9YTUi qvijHpGBdWpJ+2oWEqKoJrjW/c2VYSkbFTWCj5pmkaSOT4OkCxT1cvk7e2QvrRpGxqRw vcS/Jnjd7gslTpxBfjj7T0THGF4tKtNQMD6lrH7L2UQZw0QNlYVAAyPrVgAKmmJEnXQ1 SUug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:references:subject:cc:to:from:date :user-agent:message-id; bh=PdsvhDYehupsoqKuXfnv31Nriyc2Sqdvz4DL7X6EFhE=; b=Sm1i6CO4eV3I6BP3ETokLytfYDqOxgiCqkSPmw4r1E5hcTpMC0WfYJxJJIOndbToXq TMt3J1c2kxeuZx3i5oyp3tlo+DjfDutpfV8YPVW1rXJpAKfQBN8Y+fkCDJxjKfJXQwZz zEq81iYZCp/CHhMM/QiqhfgeWAtdzDypnrl9aPiup3pGfDP+Nq79gDn+D5vN7GdDMudX JcZ3h9XzIUW38JKPVFo7p5bjMgkJ+jf9twMJaSveACR26SvlNRURxmMB58erDqCuSVjS tLs1pW28ENy4ajEkdBMuDderPXhAV4HWW8KKvzZ6/Nupc3yRZO4oaBFI4saLRIuYA7BG Xmcg== ARC-Authentication-Results: i=1; mx.google.com; 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 Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id i14-20020aa78b4e000000b0058e1b16c4dcsi5888253pfd.142.2023.01.25.09.16.44; Wed, 25 Jan 2023 09:16:56 -0800 (PST) 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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236177AbjAYROV (ORCPT + 99 others); Wed, 25 Jan 2023 12:14:21 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38644 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236059AbjAYRN6 (ORCPT ); Wed, 25 Jan 2023 12:13:58 -0500 Received: from dfw.source.kernel.org (dfw.source.kernel.org [IPv6:2604:1380:4641:c500::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 86B27D7; Wed, 25 Jan 2023 09:13:52 -0800 (PST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 1486E6159C; Wed, 25 Jan 2023 17:13:42 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id DEDCCC433EF; Wed, 25 Jan 2023 17:13:41 +0000 (UTC) Received: from rostedt by gandalf.local.home with local (Exim 4.96) (envelope-from ) id 1pKjLA-004Nvn-2v; Wed, 25 Jan 2023 12:13:40 -0500 Message-ID: <20230125171340.715046734@goodmis.org> User-Agent: quilt/0.66 Date: Wed, 25 Jan 2023 12:13:04 -0500 From: Steven Rostedt To: linux-kernel@vger.kernel.org Cc: Masami Hiramatsu , Andrew Morton , bpf@vger.kernel.org, Peter Zijlstra , Alexei Starovoitov , Daniel Borkmann , Linyu Yuan Subject: [for-next][PATCH 12/12] bpf/tracing: Use stage6 of tracing to not duplicate macros References: <20230125171252.431857411@goodmis.org> MIME-Version: 1.0 X-Spam-Status: No, score=-6.7 required=5.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,RCVD_IN_DNSWL_HI,SPF_HELO_NONE,SPF_PASS 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?1756015641944146754?= X-GMAIL-MSGID: =?utf-8?q?1756015641944146754?= From: "Steven Rostedt (Google)" The bpf events are created by the same macro magic as tracefs trace events are. But to hook into bpf, it has its own code. It duplicates many of the same macros as the tracefs macros and this is an issue because it misses bug fixes as well as any new enhancements that come with the other trace macros. As the trace macros have been put into their own staging files, have bpf take advantage of this and use the tracefs stage 6 macros that the "fast ssign" portion of the trace event macro uses. Link: https://lkml.kernel.org/r/20230124202515.873075730@goodmis.org Link: https://lore.kernel.org/lkml/1671181385-5719-1-git-send-email-quic_linyyuan@quicinc.com/ Cc: bpf@vger.kernel.org Cc: Peter Zijlstra Cc: Alexei Starovoitov Cc: Daniel Borkmann Acked-by: Alexei Starovoitov Reported-by: Linyu Yuan Signed-off-by: Steven Rostedt (Google) --- include/trace/bpf_probe.h | 45 +-------------------------------------- 1 file changed, 1 insertion(+), 44 deletions(-) diff --git a/include/trace/bpf_probe.h b/include/trace/bpf_probe.h index 155c495b89ea..1f7fc1fc590c 100644 --- a/include/trace/bpf_probe.h +++ b/include/trace/bpf_probe.h @@ -4,50 +4,7 @@ #ifdef CONFIG_BPF_EVENTS -#undef __entry -#define __entry entry - -#undef __get_dynamic_array -#define __get_dynamic_array(field) \ - ((void *)__entry + (__entry->__data_loc_##field & 0xffff)) - -#undef __get_dynamic_array_len -#define __get_dynamic_array_len(field) \ - ((__entry->__data_loc_##field >> 16) & 0xffff) - -#undef __get_str -#define __get_str(field) ((char *)__get_dynamic_array(field)) - -#undef __get_bitmask -#define __get_bitmask(field) (char *)__get_dynamic_array(field) - -#undef __get_cpumask -#define __get_cpumask(field) (char *)__get_dynamic_array(field) - -#undef __get_sockaddr -#define __get_sockaddr(field) ((struct sockaddr *)__get_dynamic_array(field)) - -#undef __get_rel_dynamic_array -#define __get_rel_dynamic_array(field) \ - ((void *)(&__entry->__rel_loc_##field) + \ - sizeof(__entry->__rel_loc_##field) + \ - (__entry->__rel_loc_##field & 0xffff)) - -#undef __get_rel_dynamic_array_len -#define __get_rel_dynamic_array_len(field) \ - ((__entry->__rel_loc_##field >> 16) & 0xffff) - -#undef __get_rel_str -#define __get_rel_str(field) ((char *)__get_rel_dynamic_array(field)) - -#undef __get_rel_bitmask -#define __get_rel_bitmask(field) (char *)__get_rel_dynamic_array(field) - -#undef __get_rel_cpumask -#define __get_rel_cpumask(field) (char *)__get_rel_dynamic_array(field) - -#undef __get_rel_sockaddr -#define __get_rel_sockaddr(field) ((struct sockaddr *)__get_rel_dynamic_array(field)) +#include "stages/stage6_event_callback.h" #undef __perf_count #define __perf_count(c) (c)