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

Re: [Xen-devel] [PATCH v3 10/11] x86/rtc: replace paravirt rtc check with x86 specific solution



On Tue, Feb 23, 2016 at 11:57:16AM +0000, David Vrabel wrote:
> On 23/02/16 07:24, Luis R. Rodriguez wrote:
> > --- a/arch/x86/xen/enlighten.c
> > +++ b/arch/x86/xen/enlighten.c
> [...]
> > @@ -1526,8 +1525,6 @@ asmlinkage __visible void __init 
> > xen_start_kernel(void)
> >  
> >     /* Install Xen paravirt ops */
> >     pv_info = xen_info;
> > -   if (xen_initial_domain())
> > -           pv_info.features |= PV_SUPPORTED_RTC;
> >     pv_init_ops = xen_init_ops;
> >     if (!xen_pvh_domain()) {
> >             pv_cpu_ops = xen_cpu_ops;
> > diff --git a/arch/x86/xen/time.c b/arch/x86/xen/time.c
> > index a0a4e554c6f1..fbfcb01015f0 100644
> > --- a/arch/x86/xen/time.c
> > +++ b/arch/x86/xen/time.c
> > @@ -446,8 +446,10 @@ void __init xen_init_time_ops(void)
> >     x86_platform.calibrate_tsc = xen_tsc_khz;
> >     x86_platform.get_wallclock = xen_get_wallclock;
> >     /* Dom0 uses the native method to set the hardware RTC. */
> > -   if (!xen_initial_domain())
> > +   if (!xen_initial_domain()) {
> > +           x86_init.platform_flags |= X86_PLATFORM_NO_RTC;
> >             x86_platform.set_wallclock = xen_set_wallclock;
> > +   }
> >  }
> 
> Is this an early enough point to set this flag?

I'm glad you asked, I should have explained how I confirmed this on the commit
log as well. The answer is yes, even though I haven't tested it, but logically
I've confirmed this given that rtc is initialized via 
device_initcall(add_rtc_cmos);
-- these get called late in boot, way after setup_arch() during rest_init().

  Luis

_______________________________________________
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®.