Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752115AbbEGRiG (ORCPT ); Thu, 7 May 2015 13:38:06 -0400 Received: from casper.infradead.org ([85.118.1.10]:60553 "EHLO casper.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751349AbbEGRiE (ORCPT ); Thu, 7 May 2015 13:38:04 -0400 Date: Thu, 7 May 2015 19:37:50 +0200 From: Peter Zijlstra To: Arnaldo Carvalho de Melo Cc: Kan Liang , mingo@kernel.org, eranian@google.com, andi@firstfloor.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH V8 7/8] perf, x86: introduce PERF_RECORD_LOST_SAMPLES Message-ID: <20150507173750.GB27504@twins.programming.kicks-ass.net> References: <1430940834-8964-1-git-send-email-kan.liang@intel.com> <1430940834-8964-8-git-send-email-kan.liang@intel.com> <20150507113524.GG23123@twins.programming.kicks-ass.net> <20150507115446.GD16478@twins.programming.kicks-ass.net> <20150507141520.GC7862@kernel.org> <20150507143939.GW21418@twins.programming.kicks-ass.net> <20150507162223.GF7862@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150507162223.GF7862@kernel.org> User-Agent: Mutt/1.5.21 (2012-12-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2228 Lines: 63 On Thu, May 07, 2015 at 01:22:23PM -0300, Arnaldo Carvalho de Melo wrote: > Em Thu, May 07, 2015 at 04:39:39PM +0200, Peter Zijlstra escreveu: > > On Thu, May 07, 2015 at 11:15:20AM -0300, Arnaldo Carvalho de Melo wrote: > > > Em Thu, May 07, 2015 at 01:54:46PM +0200, Peter Zijlstra escreveu: > > > > On Thu, May 07, 2015 at 01:35:24PM +0200, Peter Zijlstra wrote: > > > > > > > > > > - dropped the @id field from the record, it is already included in the > > > > > @sample_id values. > > > > > > > > Hmm, this would force people to use sample_id; which in general is a > > > > good idea, but should we really force that on people? > > > > > > Well, if there are more than one sample, we need it, right? If there is > > > just one, we don't need it, what is different? Am I needing (even more) > > > coffee? > > > > > > /me goes read some code... > > > > So the question was, do we do: > > > > /* > > * struct { > > * struct perf_event_header header; > > * u64 id; > > * u64 lost; > > * struct sample_id sample_id; > > * }; > > */ > > PERF_RECORD_LOST_SAMPLES > > > > And have the id thing twice if attr.sample_id && PERF_SAMPLE_ID, but > > allow decoding if !attr.sample_id. > > > > Or force attr.sample_id && PERF_SAMPLE_ID if there's multiple events and > > do away with the extra id field, like: > > > > /* > > * struct { > > * struct perf_event_header header; > > * u64 lost; > > * struct sample_id sample_id; > > * }; > > */ > > PERF_RECORD_LOST_SAMPLES > > > > Should we force the use of sample_id on people? > > If we have more than one event we _need_ PERF_SAMPLE_ID, to > disambiguate, if we don't, then the lost events are just for that one, > no? Sure, PERF_SAMPLE_ID is required, but attr::sample_id_all is not is it? We can largely get by without using sample_id_all, as we did for a while. That said; sample_id_all has been around for more than 4 years and its recommended for use; but should we mandate it? -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/