Received: by 2002:a6b:500f:0:0:0:0:0 with SMTP id e15csp219780iob; Mon, 2 May 2022 17:35:31 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzRjIdA8GkYDnSFfx2IsBpsnj62DnT3hXMNHI/2A20zzAlAunXtCsfHlA5jsY2zU+P6pLT1 X-Received: by 2002:a17:90b:350d:b0:1dc:6680:6f1d with SMTP id ls13-20020a17090b350d00b001dc66806f1dmr1937232pjb.27.1651538130998; Mon, 02 May 2022 17:35:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1651538130; cv=none; d=google.com; s=arc-20160816; b=QnQ+dkmw56borKfw0k6gBi1F2jQHsKuyAvomGstIEuDXkl9J6JnEp1itOC3of7yp7m ZJObDiIRvltFJ0Yl30szjq9OEknesnNwmlNlpuvFRecFdJUo/q2zm+0/YAEM+qnjS65o +7QTKtp3V5la0yfqBwnuvfWLHwRVEar6mJ77m0cTtpKJjQpSOSp8JDX6UVgV71B1w4aM hmZ8nPRqwknLBY6xqhUWfNkwBmIVZ1PGkGGl1RJ5jxORMaRiifWgMRtGF474u3eXpAV+ M7aA7kQOeQ/Bi/y4mVIK4q0pcTTJ88hCAl7rWinClQIUyYXrk7M8QfncSeUYEpYoZDSM zqzA== 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=7D+3I+t+Bjx7AMKWUHFNEPdjcA8rwqba3c0NxnUB1Ig=; b=qbcmVKb8NzOvzgc49sucpRugGNoi8ufN/8INl0MNdUVLuVwAvyTd2vw1klUaoyMVON oi/MHxBsihoUwcSCMxa3AWvTGQ4cH7WsfFKabUo/YxrW32JpEec2JFznLdK5eQZcf9D/ 2TjB6fSVYWdsHEOvKqBoIH14LBBkdiKHSWWnk4DsArDtvMG4uTS4lXSZCq0UdHw/YJ8e tkYvG6/QO/mObSTjrGnL2/5ahaB40fH087VGObBANvvXj6rdJ9YoIesDX/2O9O9BqYyt QtzZ0OpXHJWSo0R7pAI1mCv3vNYikXKMOh4T+HE68PPY6+2DLYbyMZ5XNocjUbwdkTay pqLg== 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:18 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 lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [2620:137:e000::1:18]) by mx.google.com with ESMTPS id on7-20020a17090b1d0700b001d2a0a4f71esi813087pjb.33.2022.05.02.17.35.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 02 May 2022 17:35:30 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) client-ip=2620:137:e000::1:18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id A72583BF99; Mon, 2 May 2022 17:27:46 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1379736AbiD2RcI (ORCPT + 99 others); Fri, 29 Apr 2022 13:32:08 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49122 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1379613AbiD2Ray (ORCPT ); Fri, 29 Apr 2022 13:30:54 -0400 Received: from mail-lj1-f177.google.com (mail-lj1-f177.google.com [209.85.208.177]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CCB65D347D; Fri, 29 Apr 2022 10:27:35 -0700 (PDT) Received: by mail-lj1-f177.google.com with SMTP id c15so11309278ljr.9; Fri, 29 Apr 2022 10:27:35 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=7D+3I+t+Bjx7AMKWUHFNEPdjcA8rwqba3c0NxnUB1Ig=; b=kBtsUOObhlN8E18kG1QnGHGpezp6+3VVhlE++hcP0TcLxqTmSnNnO824fRj73SRiVo ugJ317qV+fzm7qOXFDCc5bzxaqypEhAE2xy4LbOqxnOyqvll19nYYIT+XVQLbt/yM5jn 4OZZH+jy9OUbv4TVOOYjuNulSXoBzcKlIL5UyUMrYaFMIMkeU68/c+sZdj7QinEl0dra lHm7rhNNa8thbHoCcUYKvSp6v3wGj+TDtRw9OBUVZs2iAowGmpGiB6X8vhjNtQ9eZ1UL gL+WQBz9GEBBxCUW3vA6V/p03Aag/YsQ4+zhINc8ybxKi04OaUP8vmHptYlhlJrX13Jj K8Gw== X-Gm-Message-State: AOAM533Ck5DlIyycpJn4EEmYu+PTncOhM0ps4zurQiLVYs4QqkmkuQI8 6yEP3FOYZrqN3hzFsTJjQ0f7p5jBq0O0QmiMr25ymok9 X-Received: by 2002:a2e:1613:0:b0:24f:2ee0:351a with SMTP id w19-20020a2e1613000000b0024f2ee0351amr189180ljd.180.1651253254034; Fri, 29 Apr 2022 10:27:34 -0700 (PDT) MIME-Version: 1.0 References: <20220422150507.222488-1-namhyung@kernel.org> <20220422150507.222488-3-namhyung@kernel.org> In-Reply-To: From: Namhyung Kim Date: Fri, 29 Apr 2022 10:27:23 -0700 Message-ID: Subject: Re: [PATCH 2/4] perf record: Enable off-cpu analysis with BPF To: Hao Luo Cc: Arnaldo Carvalho de Melo , Jiri Olsa , Ingo Molnar , Peter Zijlstra , LKML , Andi Kleen , Ian Rogers , Song Liu , bpf , linux-perf-users , Blake Jones Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, RDNS_NONE,SPF_HELO_NONE,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 Hi Hao, On Wed, Apr 27, 2022 at 4:07 PM Hao Luo wrote: > > Hi Namhyung, > > On Fri, Apr 22, 2022 at 8:05 AM Namhyung Kim wrote: > > > > [...] > > > > > Signed-off-by: Namhyung Kim > > --- > > tools/perf/Makefile.perf | 1 + > > tools/perf/builtin-record.c | 21 +++ > > tools/perf/util/Build | 1 + > > tools/perf/util/bpf_off_cpu.c | 208 +++++++++++++++++++++++++ > > tools/perf/util/bpf_skel/off_cpu.bpf.c | 137 ++++++++++++++++ > > tools/perf/util/off_cpu.h | 22 +++ > > 6 files changed, 390 insertions(+) > > create mode 100644 tools/perf/util/bpf_off_cpu.c > > create mode 100644 tools/perf/util/bpf_skel/off_cpu.bpf.c > > create mode 100644 tools/perf/util/off_cpu.h > > > > [...] > > > diff --git a/tools/perf/util/bpf_skel/off_cpu.bpf.c b/tools/perf/util/bpf_skel/off_cpu.bpf.c > > new file mode 100644 > > index 000000000000..2bc6f7cc59ea > > --- /dev/null > > +++ b/tools/perf/util/bpf_skel/off_cpu.bpf.c > > > > +struct { > > + __uint(type, BPF_MAP_TYPE_HASH); > > + __uint(key_size, sizeof(__u32)); > > + __uint(value_size, sizeof(struct tstamp_data)); > > + __uint(max_entries, MAX_ENTRIES); > > +} tstamp SEC(".maps"); > > I think using task local storage for this tstamp would be more > efficient. There is an example in > tools/bpf/runqslower/runqslower.bpf.c Right, will change in v2. Thanks, Namhyung