Re: [PATCH RESEND] Calling check_system_tsc_reliable() before unsynchronized_tsc()
From: Thomas Gleixner
Date: Thu Jun 22 2017 - 09:57:44 EST
Zhenzhong,
On Wed, 21 Jun 2017, Zhenzhong Duan wrote:
So the patch format is now correct, but the subject line is missing a
proper subsystem prefix. Please use 'git log 'path/to/patched/file' next
time to see what the usually used prefix for a file is.
In this case it's: x86/tsc
Also please do not use [PATCH RESEND] when your patch is different from the
version you sent before. Please use [PATCH v2] instead.
> unsynchronized_tsc() checks value of tsc_clocksource_reliable which is set by
> check_system_tsc_reliable(). It's better to move check_system_tsc_reliable() at
> front.
Please make your statements affirmative. 'It's better' is a weak expression.
> Though X86_FEATURE_CONSTANT_TSC is usually set for TSC reliable system, just in
> case.
So what you wanted to say here is:
tsc_clocksource_reliable is initialized in check_system_tsc_reliable(),
but it is checked in unsynchronized_tsc() which is called before the
initialization.
In practice that's not an issue because systems which mark the TSC
reliable have X86_FEATURE_CONSTANT_TSC set as well, which is evaluated
in unsynchronized_tsc() before tsc_clocksource_reliable.
Reorder the calls so initialization happens before usage.
All this information is also documented in Documentation/process/.
No need to resend. I'll fix it up for you this time.
Thanks,
tglx