Messages in this thread | | | Date | Fri, 17 Nov 2017 23:57:59 +0100 (CET) | From | Thomas Gleixner <> | Subject | Re: [PATCH 06/10] x86: jailhouse: Avoid access of unsupported platform resources |
| |
On Thu, 16 Nov 2017, Jan Kiszka wrote:
> From: Jan Kiszka <jan.kiszka@siemens.com> > > We don't have CMOS access, thus we can't set the warm-reset vectors in
s/We/A jailhouse cell/ or s/We/A jailhouse guest/
> do_boot_cpu. There is no RTC, thus also no wall clock. Furthermore, > there are no ISA IRQs and no PIC. So fill the platform callbacks > accordingly.
> +static void jailhouse_get_wallclock(struct timespec *now) > +{ > + memset(now, 0, sizeof(*now)); > +}
> @@ -1006,7 +1007,8 @@ static int do_boot_cpu(int apicid, int cpu, struct task_struct *idle, > * the targeted processor. > */ > > - if (get_uv_system_type() != UV_NON_UNIQUE_APIC) { > + if (get_uv_system_type() != UV_NON_UNIQUE_APIC && > + !jailhouse_paravirt()) { > > pr_debug("Setting warm reset code and vector.\n");
Adding more here might justify a function pointer in x86_platform_ops. Not sure though, but we have an increasing amount of xen()/kvm()/whatever conditionals popping up all over the place. And now you add jailhouse() ones :)
Thanks,
tglx
| |