Re: [RFC][PATCH 5/5] sched/core: Add debug code to catch missing update_rq_clock()

Yuyang Du
2016-05-15T10:10:04Z

Hi Matt,

Thanks for Ccing me.

I am indeed interested, because I recently encountered an rq clock
issue, which is that the clock jumps about 200ms when I was
experimenting the "flat util hierarchy" patches, which really annoyed
me, and I had to stop to figure out what is wrong (but haven't yet
figured out ;))

First, this patchset does not solve my problem, but never mind, by
reviewing your patches, I have some comments:

On Thu, May 12, 2016 at 08:49:53PM +0100, Matt Fleming wrote:
>
> - rq->clock_skip_update = 0;
> + /* Clear ACT, preserve everything else */
> + rq->clock_update_flags ^= RQCF_ACT_SKIP;

The comment says "Clear ACT", but this is really xor, and I am not sure
this is even what you want.

In addition, would it be simpler to do this?

update_rq_clock()
if (flags & RQCF_ACT_SKIP)
flags <<= 1; /* effective skip is an update */
return;

flags = RQCF_UPDATED;

Thanks,
Yuyang