Re: [PATCH 1/2 -tip] sched: Clean unused fields from struct rq

From: Peter Zijlstra
Date: Wed Mar 18 2009 - 04:51:16 EST


On Wed, 2009-03-18 at 00:23 +0000, Luis Henriques wrote:
> On Wed, Mar 18, 2009 at 01:09:29AM +0100, Peter Zijlstra wrote:
> > On Wed, 2009-03-18 at 00:03 +0000, Luis Henriques wrote:
> > > Since they are used on in statistics and are always set to zero, the following
> > > frields from struct rq have been removed: yld_exp_empty, yld_act_empty and
> > > yld_both_empty.
> > >
> > > Signed-off-by: Luis Henriques <henrix@xxxxxxx>
> > > ---
> >
> > > +++ b/kernel/sched_stats.h
> > > @@ -26,9 +26,8 @@ static int show_schedstat(struct seq_file *seq, void *v)
> > >
> > > /* runqueue-specific stats */
> > > seq_printf(seq,
> > > - "cpu%d %u %u %u %u %u %u %u %u %u %llu %llu %lu",
> > > - cpu, rq->yld_both_empty,
> > > - rq->yld_act_empty, rq->yld_exp_empty, rq->yld_count,
> > > + "cpu%d %u %u %u %u %u %u %llu %llu %lu",
> > > + cpu, rq->yld_count,
> > > rq->sched_switch, rq->sched_count, rq->sched_goidle,
> > > rq->ttwu_count, rq->ttwu_local,
> > > rq->rq_cpu_time,
> >
> > I think this bit is ABI, so you either have to bump the version number
> > or emit 0s, iirc gregory touched some of that last -- or at least wrote
> > userspace for it..
>
> Hmm... you're right. I should have though about that. Anyway, what is the
> the best approach here?
>
> I know that changes in ABI shall not break anything, but just increasing the
> version number will really solve the issue? Will userspace care for this?
> On the other hand, just writting 0s does not sound interesting either...

I really don't know, Greg, do you as a schedstat user have an opinion?

There is a 3rd option though, you could figure out what they were
supposed to count and see if that can be mapped on the current code.

Not at all sure that's worth the trouble though -- but for completeness
sake, I felt the need to mention it :-)

--
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/