[PATCH 09/11] sched: export task_prio to GPL modules
mathieu.desnoyers at efficios.com
Thu Dec 1 22:36:07 UTC 2011
* Mathieu Desnoyers (mathieu.desnoyers at efficios.com) wrote:
> * Peter Zijlstra (peterz at infradead.org) wrote:
> > On Thu, 2011-12-01 at 17:04 -0500, Mathieu Desnoyers wrote:
> > > * Peter Zijlstra (peterz at infradead.org) wrote:
> > > > On Thu, 2011-12-01 at 16:41 -0500, Mathieu Desnoyers wrote:
> > > > > LTTng needs this symbol to prepend the current task dynamic priority
> > > > > value to events (optional context information).
> > > >
> > > > I absolutely detest exporting such stuff. It propagates the idea that
> > > > task prio actually means something. Also, modules really shouldn't care.
> > >
> > > People debugging their SCHED_FIFO/SCHED_RR applications, as well as
> > > users of priority-inheritance futexes, may happen to find this
> > > information extremely useful.
> > >
> > > Just saying...
> > Right until the moment we go do deadlines.. Anyway, it still doesn't
> > make sense, your sched_switch() tracepoint handler gets this
> > information, why do you need this export at all?
> If you don't want to trace sched_switch, but just conveniently prepend
> this information to all your events, then lttng lets you dynamically
> target this extra bit of information. Note that it's not a mandatory
> event field: I call those "context" fields that the tracer prepends to
> events, as requested by the user.
One more point:
compudj at thinkos:/proc/204$ cat sched
khubd (204, #threads: 1)
se.exec_start : 3355267.749529
se.vruntime : 113843.899081
se.sum_exec_runtime : 12.820702
nr_switches : 386
nr_voluntary_switches : 385
nr_involuntary_switches : 1
se.load.weight : 1024
policy : 0
prio : 120
clock-delta : 130
So what you are saying is that it is fine to export task_prio to
_userspace_, thus making it part of the ABI, but it's not OK to export
it to GPL modules ?
Weird huh ?
> Mathieu Desnoyers
> Operating System Efficiency R&D Consultant
> EfficiOS Inc.
Operating System Efficiency R&D Consultant
More information about the devel