Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934953AbbGHOPI (ORCPT ); Wed, 8 Jul 2015 10:15:08 -0400 Received: from mail-oi0-f50.google.com ([209.85.218.50]:35481 "EHLO mail-oi0-f50.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758386AbbGHOPC (ORCPT ); Wed, 8 Jul 2015 10:15:02 -0400 MIME-Version: 1.0 In-Reply-To: <87zj37lzhi.fsf@ashishki-desk.ger.corp.intel.com> References: <87zj37lzhi.fsf@ashishki-desk.ger.corp.intel.com> Date: Wed, 8 Jul 2015 08:15:01 -0600 Message-ID: Subject: Re: [RFC PATCH v3 1/4] STM trace event: Adding generic buffer interface driver From: Mathieu Poirier To: Alexander Shishkin Cc: Chunyan Zhang , Steven Rostedt , Ingo Molnar , Serge Broslavsky , Mark Brown , Lyra Zhang , "linux-kernel@vger.kernel.org" Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3740 Lines: 97 On 8 July 2015 at 04:23, Alexander Shishkin wrote: > Chunyan Zhang writes: > >> From: Mathieu Poirier >> >> This patch adds a driver that models itself as an stm_source and >> who's sole purpose is to export an interface to the rest of the >> kernel. Once the stm and stm_source have been linked via sysfs, >> everything that is passed to the interface will endup in the STM >> trace engine. >> >> Signed-off-by: Mathieu Poirier >> Signed-off-by: Chunyan Zhang >> --- >> drivers/stm/Kconfig | 11 +++++++++++ >> drivers/stm/Makefile | 2 ++ >> drivers/stm/stm_trace_event.c | 46 +++++++++++++++++++++++++++++++++++++++++++ >> 3 files changed, 59 insertions(+) >> create mode 100644 drivers/stm/stm_trace_event.c >> >> diff --git a/drivers/stm/Kconfig b/drivers/stm/Kconfig >> index 6f2db70..8ead418 100644 >> --- a/drivers/stm/Kconfig >> +++ b/drivers/stm/Kconfig >> @@ -25,3 +25,14 @@ config STM_SOURCE_CONSOLE >> >> If you want to send kernel console messages over STM devices, >> say Y. >> + >> +config STM_TRACE_EVENT >> + tristate "Redirect/copy the output from kernel trace event to STM engine" >> + depends on STM >> + help >> + This option can be used to redirect or copy the output from kernel trace >> + event to STM engine. Enabling this option will introduce a slight >> + timing effect. >> + >> + If you want to send kernel trace event messages over STM devices, >> + say Y. >> diff --git a/drivers/stm/Makefile b/drivers/stm/Makefile >> index 74baf59..55b152c 100644 >> --- a/drivers/stm/Makefile >> +++ b/drivers/stm/Makefile >> @@ -5,3 +5,5 @@ stm_core-y := core.o policy.o >> obj-$(CONFIG_STM_DUMMY) += dummy_stm.o >> >> obj-$(CONFIG_STM_SOURCE_CONSOLE) += console.o >> + >> +obj-$(CONFIG_STM_TRACE_EVENT) += stm_trace_event.o >> diff --git a/drivers/stm/stm_trace_event.c b/drivers/stm/stm_trace_event.c >> new file mode 100644 >> index 0000000..bc77dae >> --- /dev/null >> +++ b/drivers/stm/stm_trace_event.c >> @@ -0,0 +1,46 @@ >> +/* >> + * Simple kernel driver to link kernel trace event and an STM device >> + * Copyright (c) 2015, Linaro Ltd. >> + * >> + * This program is free software; you can redistribute it and/or modify it >> + * under the terms and conditions of the GNU General Public License, >> + * version 2, as published by the Free Software Foundation. >> + * >> + * This program is distributed in the hope it will be useful, but WITHOUT >> + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or >> + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for >> + * more details. >> + */ >> + >> +#include >> +#include >> +#include >> +#include >> +#include >> + >> +static struct stm_source_data stm_trace_event_data = { >> + .name = "stm_trace_event", >> + .nr_chans = 1, > > One question is: do we want to cram ftrace data from all cpus into one > channel or use a channel per cpu? That's the perennial question. Even one channel per cpu may not be sufficient... Some configuration may want to use one channel per application. We should favour the solution that offers the most flexibility - the above was for the RFC only. > > Regards, > -- > Alex -- 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/