Re: [PATCH v12 04/11] kvm/x86: remove kvm memblock dependency

2018-07-06 Thread Paolo Bonzini
On 06/07/2018 17:03, Pavel Tatashin wrote: > I think using __initdata during init_hypervisor_platform() + > allocating during x86_init.hyper.guest_late_init() is a good approach. > My only concern, it would mean we need to init/uinit/init clock for > boot cpu. Does it mean the clock continuity is

Re: [PATCH v12 04/11] kvm/x86: remove kvm memblock dependency

2018-07-06 Thread Pavel Tatashin
I think using __initdata during init_hypervisor_platform() + allocating during x86_init.hyper.guest_late_init() is a good approach. My only concern, it would mean we need to init/uinit/init clock for boot cpu. Does it mean the clock continuity is preserved during the transition? I believe so, but

Re: [PATCH v12 04/11] kvm/x86: remove kvm memblock dependency

2018-07-06 Thread Thomas Gleixner
On Fri, 6 Jul 2018, Thomas Gleixner wrote: > On Fri, 6 Jul 2018, Paolo Bonzini wrote: > > On 06/07/2018 11:45, Thomas Gleixner wrote: > > >> One possibility is to introduce another layer of indirection: in > > >> addition to the percpu pvclock data, add a percpu pointer to the pvclock > > >> data a

Re: [PATCH v12 04/11] kvm/x86: remove kvm memblock dependency

2018-07-06 Thread Thomas Gleixner
On Fri, 6 Jul 2018, Paolo Bonzini wrote: > On 06/07/2018 11:45, Thomas Gleixner wrote: > >> One possibility is to introduce another layer of indirection: in > >> addition to the percpu pvclock data, add a percpu pointer to the pvclock > >> data and initialize it to point to a page-aligned variable

Re: [PATCH v12 04/11] kvm/x86: remove kvm memblock dependency

2018-07-06 Thread Paolo Bonzini
On 06/07/2018 11:45, Thomas Gleixner wrote: >> One possibility is to introduce another layer of indirection: in >> addition to the percpu pvclock data, add a percpu pointer to the pvclock >> data and initialize it to point to a page-aligned variable in BSS. CPU0 >> (used by vDSO) doesn't touch the

Re: [PATCH v12 04/11] kvm/x86: remove kvm memblock dependency

2018-07-06 Thread Thomas Gleixner
On Fri, 6 Jul 2018, Paolo Bonzini wrote: > On 06/07/2018 11:24, Thomas Gleixner wrote: > >> The reason for this is to avoid wasting a lot of BSS memory when KVM is > >> not in use. Thomas is going to send his take on this! > > Got it working with per cpu variables, but there is a different subtle

Re: [PATCH v12 04/11] kvm/x86: remove kvm memblock dependency

2018-07-06 Thread Paolo Bonzini
On 06/07/2018 11:24, Thomas Gleixner wrote: >> The reason for this is to avoid wasting a lot of BSS memory when KVM is >> not in use. Thomas is going to send his take on this! > Got it working with per cpu variables, but there is a different subtle > issue with that. > > The pvclock data is mappe

Re: [PATCH v12 04/11] kvm/x86: remove kvm memblock dependency

2018-07-06 Thread Thomas Gleixner
On Thu, 5 Jul 2018, Paolo Bonzini wrote: > On 21/06/2018 23:25, Pavel Tatashin wrote: > > KVM clock is initialized later compared to other hypervisor because it has > > dependency on memblock allocator. > > > > Lets bring it inline with other hypervisors by removing this dependency by > > using me

Re: [PATCH v12 04/11] kvm/x86: remove kvm memblock dependency

2018-07-05 Thread Paolo Bonzini
On 21/06/2018 23:25, Pavel Tatashin wrote: > KVM clock is initialized later compared to other hypervisor because it has > dependency on memblock allocator. > > Lets bring it inline with other hypervisors by removing this dependency by > using memory from BSS instead of allocating it. > > The bene

Re: [PATCH v12 04/11] kvm/x86: remove kvm memblock dependency

2018-06-23 Thread Thomas Gleixner
On Thu, 21 Jun 2018, Pavel Tatashin wrote: > diff --git a/arch/x86/kernel/kvm.c b/arch/x86/kernel/kvm.c > index 5b2300b818af..c65c232d3ddd 100644 > --- a/arch/x86/kernel/kvm.c > +++ b/arch/x86/kernel/kvm.c > @@ -628,6 +628,7 @@ const __initconst struct hypervisor_x86 x86_hyper_kvm = { > .name