[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH RFC v1 31/74] x86: read wallclock from Xen running in pvh mode
>>> On 04.01.18 at 14:05, <wei.liu2@xxxxxxxxxx> wrote: > Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx> Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx> with a suggestion on code structure: > --- a/xen/arch/x86/time.c > +++ b/xen/arch/x86/time.c > @@ -969,6 +969,36 @@ static unsigned long get_cmos_time(void) > return mktime(rtc.year, rtc.mon, rtc.day, rtc.hour, rtc.min, rtc.sec); > } > > +static unsigned long noinline get_xen_wallclock_time(void) > +{ > +#ifdef CONFIG_XEN_GUEST > + struct shared_info *sh_info = XEN_shared_info; > + uint32_t wc_version; > + uint64_t wc_sec; > + > + do { > + wc_version = sh_info->wc_version & ~1; > + smp_rmb(); > + > + wc_sec = sh_info->wc_sec; > + smp_rmb(); > + } while ( wc_version != sh_info->wc_version ); > + > + return wc_sec + read_xen_timer() / 1000000000; Why not move all of this ... > +#else > + ASSERT_UNREACHABLE(); > + return 0; > +#endif > +} > + > +static unsigned long get_wallclock_time(void) > +{ ... here: #ifdef CONFIG_XEN_GUEST if ( xen_guest ) { ... return wc_sec + read_xen_timer() / 1000000000; } #endif return get_cmos_time(); } avoiding one of these not very nice ASSERT_UNREACHABLE()? Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |