Re: [RFC][PATCH v1 06/15] perf: export tracepoint events viasysfs: iwlwifi and iwlwifi_io

From: Lin Ming
Date: Thu Jul 22 2010 - 22:45:38 EST


On Fri, 2010-07-23 at 10:14 +0800, Steven Rostedt wrote:
> On Fri, 2010-07-23 at 11:37 +1000, Dave Chinner wrote:
> > On Thu, Jul 22, 2010 at 09:54:04AM -0400, Steven Rostedt wrote:
> > > On Thu, 2010-07-22 at 15:48 +0200, Ingo Molnar wrote:
> > > > * Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
> > >
> > > > Yeah - and the point of this submission is to allow the discussion of how to
> > > > achieve these registrations.
> > > >
> > > > Driver authors will want to have some control - for example the place where
> > > > the events directory shows up in sysfs within the driver's directory structure
> > > > - etc.
> > > >
> > > > But we indeed want to automate it as much as possible.
> > >
> > > Perhaps we can create a TRACE_EVENT_PATH() macro, that allows the
> > > developer to specify the path that the event will be seen in sysfs?
> >
> > Perhaps you could build that into the event class definition as well
> > so each separate class in a subsystem can be placed in it's own
> > sub-directory?
> >
> > That would make turning on and off specific classes trace points so
> > much simpler than it now, espcially for XFS where we now have > 250
> > tracepoints that are mostly defined by event classes already...
>
>
> I was working on creating a "TRACE_CATEGORY()" that allowed you to put
> tracepoints into categories. Thus, these tracepoints will all still be
> in the XFS system, but you can add hierarchical categories that let you
> group and enable tracepoints in these groups.
>
> But I stopped this work since it was more ftrace specific than perf, and
> I need to figure out how to continue my work on ftrace and at the same
> time merge it towards perf. This has been taking much longer than I have
> expected. Perhaps I should just finish that work, and then see how we
> can make perf work with it too?

That's nice.

Does this "TRACE_CATEGORY()" can help to specify different event
attribute value?

/sys/devices/pci0000:00/0000:00:02.0/drm/card0/events
|-- i915_gem_object_bind
| |-- config
| |-- type
| |-- filter ==> filter for card0

/sys/devices/pci0000:00/0000:00:02.0/drm/card1/events
|-- i915_gem_object_bind
| |-- config
| |-- type
| |-- filter ==> filter for card1

In above example, the values of "config" and "type" are same.
But the values of "filter" are different.

Lin Ming

>
> -- Steve
>
>


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/