Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754183AbbGWRFl (ORCPT ); Thu, 23 Jul 2015 13:05:41 -0400 Received: from mail-oi0-f52.google.com ([209.85.218.52]:33594 "EHLO mail-oi0-f52.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753692AbbGWRFj (ORCPT ); Thu, 23 Jul 2015 13:05:39 -0400 From: Vince Weaver X-Google-Original-From: Vince Weaver Date: Thu, 23 Jul 2015 13:12:18 -0400 (EDT) To: "Michael Kerrisk (man-pages)" cc: linux-man@vger.kernel.org, linux-kernel@vger.kernel.org, Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Stephane Eranian , Alexander Shishkin , Borislav Petkov , Frederic Weisbecker , "H. Peter Anvin" , Kaixu Xia , Linus Torvalds , Mike Galbraith , Robert Richter , Thomas Gleixner , adrian.hunter@intel.com, kan.liang@intel.com, markus.t.metzger@intel.com, mathieu.poirier@linaro.org, Vince Weaver Subject: [patch 05/11] perf_event_open.2: aux_{head,tail,offset,size} support Message-ID: User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3122 Lines: 88 This manpage patch relates to the addition of the AUX mmap region as added in the following commit: commit 45bfb2e50471abbbfd83d40d28c986078b0d24ff Author: Peter Zijlstra perf: Add AUX area to ring buffer for raw data streams Signed-off-by: Peter Zijlstra (Intel) Acked-by: Alexander Shishkin Cc: Borislav Petkov Cc: Frederic Weisbecker Cc: H. Peter Anvin Cc: Kaixu Xia Cc: Linus Torvalds Cc: Mike Galbraith Cc: Paul Mackerras Cc: Robert Richter Cc: Stephane Eranian Cc: Thomas Gleixner Cc: acme@infradead.org Cc: adrian.hunter@intel.com Cc: kan.liang@intel.com Cc: markus.t.metzger@intel.com Cc: mathieu.poirier@linaro.org Link: http://lkml.kernel.org/r/1421237903-181015-3-git-send-email-alexander.shishkin@linux.intel.com Signed-off-by: Ingo Molnar Signed-off-by: Vince Weaver diff --git a/man2/perf_event_open.2 b/man2/perf_event_open.2 index a3bebaa..bd6c4c9 100644 --- a/man2/perf_event_open.2 +++ b/man2/perf_event_open.2 @@ -1416,6 +1416,10 @@ struct perf_event_mmap_page { __u64 data_tail; /* user-space written tail */ __u64 data_offset; /* where the buffer starts */ __u64 data_size; /* data buffer size */ + __u64 aux_head; + __u64 aux_tail; + __u64 aux_offset; + __u64 aux_size; } .fi @@ -1643,6 +1647,34 @@ where perf sample data begins. .\" commit e8c6deac69629c0cb97c3d3272f8631ef17f8f0f Contains the size of the perf sample region within the mmap buffer. +.TP +.IR aux_head ", " aux_tail ", " aux_offset ", " aux_size " (since Linux 4.1) +.\" commit 45bfb2e50471abbbfd83d40d28c986078b0d24ff +The AUX region allows mmaping a separate sample buffer for high +bandwidth data streams (separate from the main perf sample buffer). +An example of a high bandwidth stream is instruction tracing support, +as is found in newer Intel processors. + +To set up an AUX area, first +.I aux_offset +needs to be set with an offset greater than +.IR data_offset + data_size +and +.I aux_size +needs to be set to the desired buffer size. +The desired offset and size must be page aligned, and the size +must be a power of two. +These values are then passed to mmap in order to map the AUX buffer. +Pages in the AUX buffer are included as part of the user mlock +rlimit as well as the +.I perf_event_mlock_kb +allowance. + +The +.IR aux_head " and " aux_tail +ring buffer pointers have the same behavior and ordering +rules as the previous described +.IR data_head " and " data_tail . .PP The following 2^n ring-buffer pages have the layout described below. -- 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/