Messages in this thread | | | Date | Thu, 24 Jun 2010 11:36:25 +0200 | From | Ingo Molnar <> | Subject | Re: [rfc] Describe events in a structured way via sysfs |
| |
* Johannes Berg <johannes@sipsolutions.net> wrote:
> On Tue, 2010-06-22 at 15:22 +0800, Lin Ming wrote: > > > > > net/wlan0/events/ > > > > net/waln1/events/ > > > > .... > > > > net/walnN/events/ > > > > > > That's not appropriate either though since you may have multiple network > > > interfaces on the same hardware :) > > > > Doesn't net/wlan0...wlanN mean multiple network interfaces on the same > > hardware? > > Yes, but the trace points aren't per network interface but rather per > hardware piece.
Yeah - we generally want events to live at their 'natural' source in sysfs.
So if it's a per device hardware event, it should live with the hardware piece. If it's a higher level chipset event, it should live where the chipset driver is in sysfs. If it's a subsystem level event then it should live there.
I think what you mentioned in your other posting makes the most sense: give flexibility to tracepoint authors to place the event in the most sensible sysfs place. It is them who define the tracepoints and the events so any second guessing by a generic layer will probably get in the way. The generic tool layer will be content with having the event_source class in sysfs, to see 'all' event sources ttheir topological structure.
That's probably best achieved via a TRACE_EVENT() variant, by passing in the sysfs location.
It might even make sense to make this a part of TRACE_EVENT() itself and make 'NULL' the current default, non-sysfs-enumerated behavior. That way we can gradually (and non-intrusively) find all the right sysfs places for events.
Thanks,
Ingo
| |