Re: [PATCH 1/4] posix_cpu_timer: Consolidate expiry time type

From: Frederic Weisbecker
Date: Tue Mar 19 2013 - 20:25:29 EST


2013/3/19 Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>:
> On Fri, 15 Mar 2013 17:53:59 +0100 Frederic Weisbecker <fweisbec@xxxxxxxxx> wrote:
>
>> The posix cpu timer expiry time is stored in a union of
>> two types: a 64 bits field if we rely on scheduler precise
>> accounting, or a cputime_t if we rely on jiffies.
>>
>> This result in quite some duplicate code and special cases
>> to handle the two types.
>>
>> Just unify this into a single 64 bits field. cputime_t can
>> always fit into it.
>>
>
> x86_64 allnoconfig:
>
> kernel/posix-cpu-timers.c: In function 'posix_cpu_timer_schedule':
> kernel/posix-cpu-timers.c:1127: warning: 'now' may be used uninitialized in this function
>
> It looks like it's always been buggy, but your switch from `union
> cou_time_count' to `unsigned long long' made gcc notice it.

Ok, from a quick view it seems what's missing is a call to
cpu_timer_sample_group() to compute the residual time for further call
of timer_gettime(). I'll look at it deeper and send you a fix.

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