Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753741AbcLIKLC (ORCPT ); Fri, 9 Dec 2016 05:11:02 -0500 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:42485 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751599AbcLIKLA (ORCPT ); Fri, 9 Dec 2016 05:11:00 -0500 Subject: Re: [PATCH v2 1/3] perf: add PERF_RECORD_NAMESPACES to include namespaces related info To: Peter Zijlstra References: <147999860459.15705.11450781745380950795.stgit@hbathini.in.ibm.com> <147999864851.15705.3363371034116608966.stgit@hbathini.in.ibm.com> <20161124151011.GG3092@twins.programming.kicks-ass.net> <3d42dd8c-446d-f0de-1853-b78190a109c6@linux.vnet.ibm.com> Cc: ast@fb.com, lkml , acme@kernel.org, alexander.shishkin@linux.intel.com, mingo@redhat.com, daniel@iogearbox.net, rostedt@goodmis.org, Ananth N Mavinakayanahalli , ebiederm@xmission.com, sargun@sargun.me, Aravinda Prasad , brendan.d.gregg@gmail.com From: Hari Bathini Date: Fri, 9 Dec 2016 15:40:36 +0530 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: <3d42dd8c-446d-f0de-1853-b78190a109c6@linux.vnet.ibm.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 16120910-0012-0000-0000-000001F55CD4 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 16120910-0013-0000-0000-0000069A4E38 Message-Id: X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2016-12-09_06:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 suspectscore=0 malwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1609300000 definitions=main-1612090149 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1588 Lines: 53 On Friday 09 December 2016 12:10 AM, Hari Bathini wrote: > Hi Peter, > > > Sorry for taking so long to respond... > > > On Thursday 24 November 2016 08:40 PM, Peter Zijlstra wrote: >> On Thu, Nov 24, 2016 at 08:14:29PM +0530, Hari Bathini wrote: >>> @@ -862,6 +875,19 @@ enum perf_event_type { >>> */ >>> PERF_RECORD_SWITCH_CPU_WIDE = 15, >>> + /* >>> + * struct { >>> + * struct perf_event_header header; >>> + * >>> + * u32 pid, tid; >>> + * u64 time; >> pid,tid and time are already present in sample_id. Many of the 'legacy' >> record have redundant information since we added sample_id, but most of >> the new ones haven't and rely on sample_all being set. > > I tried using pid/tid from sample data, but realized that pid/tid in > event_id > could be different from the one in sample data, at least for > fork/namespaces > events, since __perf_event_header__init_id( ) that updates the sample > data > is getting the pid/tid of current task. > > I am not sure if it is advisable to change > __perf_event_header__init_id( ) for this..? > Hi Peter, Adding task parameter to __perf_event_header__init_id( ) and doing something like.. perf_event_pid(event, task ? task : current) perf_event_tid(event, task ? task : current) Also, for synthesized events, sample_id is not updated currently. Working on it as that is needed if we want to relay on pid, tid values from sample_id. Let me know, if this is what you had in mind or something else altogether.. Thanks Hari