Received: by 2002:a05:6358:45e:b0:b5:b6eb:e1f9 with SMTP id 30csp566574rwe; Fri, 26 Aug 2022 09:59:05 -0700 (PDT) X-Google-Smtp-Source: AA6agR5Z9X5WEK7XkENs6nDFDPwdbFYfsmSSOZ98iBk58R6WApVV+WpNwSz0OLtECsEi2NoLZZpv X-Received: by 2002:a17:902:b58a:b0:16e:f91a:486b with SMTP id a10-20020a170902b58a00b0016ef91a486bmr4523409pls.119.1661533144833; Fri, 26 Aug 2022 09:59:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1661533144; cv=none; d=google.com; s=arc-20160816; b=FwG8q/nW+/L67FD+e/sbQ0g7i6m241PfKytUwomuWDj+aHgOjPQ3SlhetMWj87XXLo WsIwr7dPe0Hwt9txpDnLXCxcpSh7EU2fzvJNRVmg6FYtYeDPBKaTdBqvNCVfXYzo2SYg GaKWgyGMiIcZ0kFplc7tk7kzYAjPvAKYACpT64A+LqcOCqlXDgIQGeTLcgrPjXzgMr4S wV10M+W8FpzewpnrzseSAr0/Dyx+u9pjHPtGs4m1NnpI1sE71ZIqOxedp6jWvmMWUVza PZLfaquJTU2RoaIoxQQJs5u0oY7IlNisXppNaSvad7xrnMJuRZ4s49nHQ/5gDU/JYAOU ITtw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version; bh=0Z6D6Sxti99F+xj/7ip2qq8AUtDFfJQ2ASh7JTCA1fk=; b=m+4caf268Ec0Zua+gHI39FAacvYiib/p+e60rkDJrF5LUNN8j83GVVkGPJgH3d5lC7 0d3r75V0zTEFWLA8TDzOfe7AAIAWYm4x52Ni5rYXDq7JX55y8brVid1FfIrhL6TWVkLu a4lupgfRY6sH6tyOIw474wCE/m1xRn7q8O/YOOto66CAbpsIpV7OsyDO0Jnv46sq2ghs UutktgjZYpxC7EtAfON7Jw7ByZWbIVYvKcPEvZo2leAwVswVutHcfjcmUKxa8/2fO5FB VpLz5phaIqd5Es4TlTke8M2rzdiubV9OEExqavyKQLuByBVI1WlE7bw4PdmYGX1vGuuc AUJA== 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id j3-20020a170903028300b001709c82ca08si2050767plr.297.2022.08.26.09.58.53; Fri, 26 Aug 2022 09:59:04 -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; 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=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238718AbiHZQdl (ORCPT + 99 others); Fri, 26 Aug 2022 12:33:41 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43530 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231868AbiHZQdi (ORCPT ); Fri, 26 Aug 2022 12:33:38 -0400 Received: from mail-oa1-f50.google.com (mail-oa1-f50.google.com [209.85.160.50]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 08875DD4CA; Fri, 26 Aug 2022 09:33:38 -0700 (PDT) Received: by mail-oa1-f50.google.com with SMTP id 586e51a60fabf-11c4d7d4683so2690565fac.8; Fri, 26 Aug 2022 09:33:38 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc; bh=0Z6D6Sxti99F+xj/7ip2qq8AUtDFfJQ2ASh7JTCA1fk=; b=0FcXjLK8i88mcU8YSLU1TRPk3bTiIVSTyWApKA8aFk8mor7T747r0+bU1nagKfUxQZ iY5HOWVHzAo+K7A2VD93MzO7VQvIqSxAJbsereKT3XQz+kPJWfi0MDgSQZOA1nua6rfD FetadJzGE2LvfYLvz/wLVGyFiaCYMKxS9E+nPJV9ILC6H6thwUYfOeoren67EdRXTLz2 lHwvctrBNh3XHE35uuNzXxkS8fewjXlXh/Qc0XCOjrA4oD/eo+SMIH7TwGVr+9s5KtFM OiDQPAE6orOP8DjXpfhZvScX+6Ba3AuY2hDIMmiGuzQbN9OVCIv5l9mxvu3Z4YNHnh3u abXg== X-Gm-Message-State: ACgBeo0MSw/+4ncB4yRpZnfZXTVUkKjmrVccGqOq11xTsc/4476Cg0eQ 2vsJVh2Z0CA74YL0NqfHiPlNwj1YeFhcG2CIr4w= X-Received: by 2002:a05:6870:a184:b0:116:bd39:7f94 with SMTP id a4-20020a056870a18400b00116bd397f94mr2261698oaf.5.1661531617282; Fri, 26 Aug 2022 09:33:37 -0700 (PDT) MIME-Version: 1.0 References: <20220823210354.1407473-1-namhyung@kernel.org> In-Reply-To: From: Namhyung Kim Date: Fri, 26 Aug 2022 09:33:26 -0700 Message-ID: Subject: Re: [PATCH bpf-next] bpf: Add bpf_read_raw_record() helper To: Song Liu Cc: Song Liu , Andrii Nakryiko , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Martin Lau , Yonghong Song , John Fastabend , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Steven Rostedt , Peter Zijlstra , Ingo Molnar , "bpf@vger.kernel.org" , LKML Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-1.4 required=5.0 tests=BAYES_00, FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=no 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 On Thu, Aug 25, 2022 at 10:53 PM Song Liu wrote: > > On Thu, Aug 25, 2022 at 10:22 PM Namhyung Kim wrote: > > > > On Thu, Aug 25, 2022 at 7:35 PM Song Liu wrote: > > > Actually, since we are on this, can we make it more generic, and handle > > > all possible PERF_SAMPLE_* (in enum perf_event_sample_format)? Something > > > like: > > > > > > long bpf_perf_event_read_sample(void *ctx, void *buf, u64 size, u64 flags); > > > > > > WDYT Namhyung? > > > > Do you mean reading the whole sample data at once? > > Then it needs to parse the sample data format properly > > which is non trivial due to a number of variable length > > fields like callchains and branch stack, etc. > > > > Also I'm afraid I might need event configuration info > > other than sample data like attr.type, attr.config, > > attr.sample_type and so on. > > > > Hmm.. maybe we can add it to the ctx directly like ctx.attr_type? > > The user should have access to the perf_event_attr used to > create the event. This is also available in ctx->event->attr. Do you mean from BPF? I'd like to have a generic BPF program that can handle various filtering according to the command line arguments. I'm not sure but it might do something differently for each event based on the attr settings. Thanks, Namhyung