Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758842AbbEENR6 (ORCPT ); Tue, 5 May 2015 09:17:58 -0400 Received: from bombadil.infradead.org ([198.137.202.9]:58881 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758634AbbEENRv (ORCPT ); Tue, 5 May 2015 09:17:51 -0400 Date: Tue, 5 May 2015 15:17:37 +0200 From: Peter Zijlstra To: Kan Liang Cc: mingo@kernel.org, acme@infradead.org, eranian@google.com, andi@firstfloor.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH V7 3/6] perf, x86: handle multiple records in PEBS buffer Message-ID: <20150505131737.GC16478@twins.programming.kicks-ass.net> References: <1429517270-8079-1-git-send-email-kan.liang@intel.com> <1429517270-8079-4-git-send-email-kan.liang@intel.com> <20150505130723.GN23123@twins.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150505130723.GN23123@twins.programming.kicks-ass.net> 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: 1429 Lines: 46 On Tue, May 05, 2015 at 03:07:23PM +0200, Peter Zijlstra wrote: > On Mon, Apr 20, 2015 at 04:07:47AM -0400, Kan Liang wrote: > > From: Yan, Zheng > > +static void perf_log_lost(struct perf_event *event) > > +{ > > + struct perf_output_handle handle; > > + struct perf_sample_data sample; > > + int ret; > > + > > + struct { > > + struct perf_event_header header; > > + u64 id; > > + u64 lost; > > + } lost_event = { > > + .header = { > > + .type = PERF_RECORD_LOST, > > + .misc = 0, > > + .size = sizeof(lost_event), > > + }, > > + .id = event->id, > > + .lost = 1, > > + }; > > + > > + perf_event_header__init_id(&lost_event.header, &sample, event); > > + > > + ret = perf_output_begin(&handle, event, > > + lost_event.header.size); > > + if (ret) > > + return; > > + > > + perf_output_put(&handle, lost_event); > > + perf_event__output_id_sample(event, &handle, &sample); > > + perf_output_end(&handle); > > +} > > RECORDs are generic, and should live in the core code. > > Also, you should introduce this RECORD in a separate patch. On that, this is lacking a RECORD definition in include/uapi/linux/perf_event.h:perf_event_type -- 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/