[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH 3/5] x86/time: streamline platform time init on plt_init()



On 17/03/16 16:12, Joao Martins wrote:
> And use to initialize platform time solely for clocksource=tsc,
> as opposed to initializing platform overflow timer, which would
> only fire in ~180 years (on 2.2 Ghz Broadwell processor).
>
> Signed-off-by: Joao Martins <joao.m.martins@xxxxxxxxxx>

Again, just style corrections.

Reviewed-by Andrew Cooper <andrew.cooper3@xxxxxxxxxx>

> diff --git a/xen/arch/x86/time.c b/xen/arch/x86/time.c
> index 1311c58..5af8902 100644
> --- a/xen/arch/x86/time.c
> +++ b/xen/arch/x86/time.c
> @@ -434,6 +434,7 @@ uint64_t ns_to_acpi_pm_tick(uint64_t ns)
>  /************************************************************
>   * PLATFORM TIMER 4: TSC
>   */
> +static bool_t clocksource_is_tsc = 0;

No need to explicitly initialise to 0.

>  static u64 tsc_freq;
>  static unsigned long tsc_max_warp;
>  static void tsc_check_reliability(void);
> @@ -466,7 +467,7 @@ static int __init init_tsctimer(struct 
> platform_timesource *pts)
>      }
>  
>      pts->frequency = tsc_freq;
> -    return tsc_reliable;
> +    return ( clocksource_is_tsc = tsc_reliable );

While this does work, please avoid mixing an assignment and a return.

Something like

pts->frequency = tsc_freq;
clocksource_is_tsc = tsc_reliable;

return tsc_reliable;

is fine and easier logic to read.

> @@ -633,11 +648,22 @@ static void __init init_platform_timer(void)
>  
>      set_time_scale(&plt_scale, pts->frequency);
>  
> -    plt_overflow_period = scale_delta(
> -        1ull << (pts->counter_bits-1), &plt_scale);
> -    init_timer(&plt_overflow_timer, plt_overflow, NULL, 0);
>      plt_src = *pts;
> -    plt_overflow(NULL);
> +
> +    if ( clocksource_is_tsc )
> +    {
> +        plt_init();
> +    }
> +    else
> +    {
> +        plt_overflow_period = scale_delta(
> +            1ull << (pts->counter_bits-1), &plt_scale);

As you are moving this codeblock, please fix the style to
(pts->counter_bits - 1)

~Andrew

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.