Received: by 2002:a25:e74b:0:0:0:0:0 with SMTP id e72csp152774ybh; Fri, 17 Jul 2020 22:50:01 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwfbOKMcF7BGqPeicn13hdlzH+PRz4x0eZofHBRsgYqX7I1QIR8xcWgIp/RZMKCukTC+I3k X-Received: by 2002:a05:6402:3049:: with SMTP id bu9mr12820755edb.232.1595051401615; Fri, 17 Jul 2020 22:50:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1595051401; cv=none; d=google.com; s=arc-20160816; b=liRGcQVDrrb3xXQOKNURS+2hKSrQNPYx1HI47TIIsACOCJXXKctZ/mBXDGKqeGwoo1 RUF9r+uX97PTcIU+KAhNQS1rWFNL+nJUA3Hm8n2fj64pdFHquSs87FzNEtMPpCMhEb5g 21QpL9DEqAxAIbASSW5bU2+n3GZ/SNEUkNkCJrQua0T71ruGE4CYlGEUE10Rft1Ul/tk WotdklswZ4vlSCqjMA4urh9vl7Yi1rv9MF6lqNhLDisyG2jwPCyNNWfkN4xrG1m025Hd ZEJFW6PZHahktXJaH86a4DbKDEhpGZ/CL711Ar6EVxlLFGxdPZPgLMgsUrQAuFINZalV HfFQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:content-transfer-encoding :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature; bh=BoFpG5s+lsVErPe9zFgNuHyTdzcSF0LluD6wUQfwAEc=; b=pKWpRuDsFXe7iyHnoCJbyRZoS+rUNxF7cYsgSkr9yCClP6Rmao5Mu3xgBER5vSmwoa v0ovkIcpNm3r4z5ZobGb/08oZxMDhYbuzfCc6dO/+8Yg8luZDjV0KYHFPECr8H/o/rSu tzSgwmMOWz7hoOjHMYoWhXA0goDT3zHMGXHVHItg1RVnh5gm94lZSuVmGTXqPO/Q4NRG emQs77kLmxRKC6reUrSEGLbmxmzWUzaAVOGfG1duk3Jn8EVF5LJXd1hKWVagszLYfpt9 5O1q03NQIrwVej4bo21k+OPMKoCrXQRVle8g4k20iHNPwxbQ23ZSpe8JfVph+VEWQz6h qjeQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b="jEV5b9K/"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id br6si6538572ejb.203.2020.07.17.22.49.38; Fri, 17 Jul 2020 22:50:01 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b="jEV5b9K/"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727043AbgGRFrp (ORCPT + 99 others); Sat, 18 Jul 2020 01:47:45 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44108 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726377AbgGRFro (ORCPT ); Sat, 18 Jul 2020 01:47:44 -0400 Received: from mail-pf1-x441.google.com (mail-pf1-x441.google.com [IPv6:2607:f8b0:4864:20::441]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4A6BAC0619D2 for ; Fri, 17 Jul 2020 22:47:44 -0700 (PDT) Received: by mail-pf1-x441.google.com with SMTP id u185so6393582pfu.1 for ; Fri, 17 Jul 2020 22:47:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:content-transfer-encoding:in-reply-to; bh=BoFpG5s+lsVErPe9zFgNuHyTdzcSF0LluD6wUQfwAEc=; b=jEV5b9K/r+84ZnSQt6ooI2nHa+vIpeYfhfbl4rjE+cPr0Ss/h0whvOyY2Hg/kUvPaU NxYjreJfNYOwVoOveaOnJARH+8EhKhLvJM5TWRXbDdtMkIHC6eKfuWbroCayIeDpuJhq aIsOJTUcx3PZzlZ+gzs7hvw/J0vVWhy91jwRkeqVoGJKNxpTzxFSh7py5XHJm5fSvNeG P3H9Cx92AJ8sUWBbnN42S2LBcPCNcGEJlJgnZP4DLt3xLbdxYqwJi7FDx6u1GsndBzzm P316q57yJEcuR/TNAZDGkdVPA1lhEpfa1tSl0mqrlrx6uZOMwonEYjdH92htXtHLbaNG zw5w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=BoFpG5s+lsVErPe9zFgNuHyTdzcSF0LluD6wUQfwAEc=; b=rvhWr3royFC4lVEOp2IOkFZ3ZEwVaaRzKVut8FHI7ejcV5yVMuZNwW3mI9HqJT9+YP QbdTqMqytGJikgaM7KTrYC6WI6Qll7PhRHhpcimZ9SgobNs/eaKONxFPwu3PAUCWUai6 o1OKJxjBA4OB3tS73xt95c0blr7KnpBZvXONfJROqnmcuV0Mz4BoO4gnH+RI5YjCTYz1 rYTRJAA/B17zx3w56TPb9ZJ6pngub7LeDjOU21kTRmGedlLWxjTZj977L7XQp8TMU2Nb DDHon0OUN+xxQFPS3H4mcAYgQRoC1L71cvgl2TRQltiy16XNx5VABaDkvXShkAvdGNXv EQNQ== X-Gm-Message-State: AOAM531W8bfjCXEDsYd4QxjrOGT5wltcnYP+4V+SCbz6kk+tpLJR9cDp dZf5t70BalPombGj74tnBBw= X-Received: by 2002:a05:6a00:1514:: with SMTP id q20mr11059218pfu.243.1595051263644; Fri, 17 Jul 2020 22:47:43 -0700 (PDT) Received: from mail.google.com ([149.248.10.52]) by smtp.gmail.com with ESMTPSA id x9sm6775167pfq.11.2020.07.17.22.47.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 17 Jul 2020 22:47:42 -0700 (PDT) Date: Sat, 18 Jul 2020 13:47:32 +0800 From: Changbin Du To: Steven Rostedt Cc: Changbin Du , Arnaldo Carvalho de Melo , Jiri Olsa , Peter Zijlstra , Ingo Molnar , Namhyung Kim , linux-kernel@vger.kernel.org Subject: Re: [PATCH v5 03/17] perf ftrace: add option -t/--tid to filter by thread id Message-ID: <20200718054732.wv2q5taib7o4tf2u@mail.google.com> References: <20200711124035.6513-1-changbin.du@gmail.com> <20200711124035.6513-4-changbin.du@gmail.com> <20200716153630.GD374956@kernel.org> <20200717132650.i32oovllal22b35i@mail.google.com> <20200717130124.54e85349@oasis.local.home> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20200717130124.54e85349@oasis.local.home> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Jul 17, 2020 at 01:01:24PM -0400, Steven Rostedt wrote: > On Fri, 17 Jul 2020 21:26:50 +0800 > Changbin Du wrote: > > > On Thu, Jul 16, 2020 at 12:36:30PM -0300, Arnaldo Carvalho de Melo wrote: > > > Em Sat, Jul 11, 2020 at 08:40:21PM +0800, Changbin Du escreveu: > > > > This allows us to trace single thread instead of the whole process. > > > > > > > > Signed-off-by: Changbin Du > > > > --- > > > > tools/perf/Documentation/perf-ftrace.txt | 4 ++++ > > > > tools/perf/builtin-ftrace.c | 2 ++ > > > > 2 files changed, 6 insertions(+) > > > > > > > > diff --git a/tools/perf/Documentation/perf-ftrace.txt b/tools/perf/Documentation/perf-ftrace.txt > > > > index d79560dea19f..e204bf6d50d8 100644 > > > > --- a/tools/perf/Documentation/perf-ftrace.txt > > > > +++ b/tools/perf/Documentation/perf-ftrace.txt > > > > @@ -38,6 +38,10 @@ OPTIONS > > > > --pid=:: > > > > Trace on existing process id (comma separated list). > > > > > > > > +-t:: > > > > +--tid=:: > > > > + Trace on existing thread id (comma separated list). > > > > + > > > > > > > > > Humm, I just tried: > > > > > > [root@five ~]# yes > /dev/null & > > > [1] 18265 > > > [root@five ~]# perf ftrace --tid 18265 > > > ^C[root@five ~]# > > > > > > After waiting for a while, nothing, what am I doing wrong? > > > > > I got it wrong. Currently ftrace only can filter by pid. If the pid is not > > the main thread it won't work. > > Wait what? > > The "pid" for ftrace is really a "task id" which is a thread id. > My bad. I traced a sleeping thread yesterday so no event generated. Now it works: $ pstree -p 2378 qemu-system-x86(2378)─┬─{qemu-system-x86}(2379) ├─{qemu-system-x86}(2382) ├─{qemu-system-x86}(2385) ├─{qemu-system-x86}(2387) ├─{qemu-system-x86}(2388) ├─{qemu-system-x86}(2389) ├─{qemu-system-x86}(2390) ├─{qemu-system-x86}(2391) ├─{qemu-system-x86}(2392) $ sudo ./perf ftrace --tid 2388 [sudo] password for changbin: # tracer: function # # entries-in-buffer/entries-written: 0/0 #P:8 # # TASK-PID CPU# TIMESTAMP FUNCTION # | | | | | -0 [001] 6561.553989: switch_mm_irqs_off <-__schedule -0 [001] 6561.553996: load_new_mm_cr3 <-switch_mm_irqs_off qemu-system-x86-2388 [001] 6561.553997: finish_task_switch <-__schedule qemu-system-x86-2388 [001] 6561.553998: smp_irq_work_interrupt <-irq_work_interrupt qemu-system-x86-2388 [001] 6561.553999: irq_enter <-smp_irq_work_interrupt qemu-system-x86-2388 [001] 6561.553999: rcu_irq_enter <-irq_enter qemu-system-x86-2388 [001] 6561.554000: __wake_up <-rb_wake_up_waiters qemu-system-x86-2388 [001] 6561.554000: __wake_up_common_lock <-__wake_up qemu-system-x86-2388 [001] 6561.554000: _raw_spin_lock_irqsave <-__wake_up_common_lock qemu-system-x86-2388 [001] 6561.554000: __wake_up_common <-__wake_up_common_lock ... > [root@bxtest ~]# yes > /dev/null & > [1] 6799 > [root@bxtest ~]# trace-cmd record -e all -P 6799 > Hit Ctrl^C to stop recording > ^CCPU 0: 3573031 events lost > CPU0 data recorded at offset=0x838000 > 627675136 bytes in size > CPU1 data recorded at offset=0x25ed1000 > 0 bytes in size > CPU2 data recorded at offset=0x25ed1000 > 0 bytes in size > CPU3 data recorded at offset=0x25ed1000 > 0 bytes in size > CPU4 data recorded at offset=0x25ed1000 > 0 bytes in size > CPU5 data recorded at offset=0x25ed1000 > 0 bytes in size > CPU6 data recorded at offset=0x25ed1000 > 0 bytes in size > CPU7 data recorded at offset=0x25ed1000 > 0 bytes in size > [root@bxtest ~]# trace-cmd report | head > CPU 1 is empty > CPU 2 is empty > CPU 3 is empty > CPU 4 is empty > CPU 5 is empty > CPU 6 is empty > CPU 7 is empty > cpus=8 > yes-6799 [000] 67825.580902: sys_exit: NR 1 = 8192 > yes-6799 [000] 67825.580903: sys_exit_write: 0x2000 > > > What's different about tid vs pid? > > -- Steve > > > > > > > So this patch makes no sense. will drop this. > > -- Cheers, Changbin Du