Re: [PATCH 1/3] KVM: cleanup (physical) CPU hotplug
Il 17/09/2013 09:57, Jan Kiszka ha scritto: >> > Remove the useless argument, and do not do anything if there are no >> > VMs running at the time of the hotplug. > kvm_cpu_hotplug already filters !kvm_usage_count. If we need the check > to be under kvm_lock, drop that line as well. If that is not required > (machine still halted?), drop the related changes here. CPU_DYING is called under stop_machine, CPU_STARTING is not. So I should drop the test in kvm_cpu_hotplug. It's a bit clearer anyway to not rely on stop_machine. Paolo -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 1/3] KVM: cleanup (physical) CPU hotplug
On 2013-09-16 16:06, Paolo Bonzini wrote: > Remove the useless argument, and do not do anything if there are no > VMs running at the time of the hotplug. kvm_cpu_hotplug already filters !kvm_usage_count. If we need the check to be under kvm_lock, drop that line as well. If that is not required (machine still halted?), drop the related changes here. Jan > > Cc: sta...@vger.kernel.org > Cc: k...@vger.kernel.org > Cc: g...@redhat.com > Cc: jan.kis...@siemens.com > Signed-off-by: Paolo Bonzini > --- > virt/kvm/kvm_main.c | 14 -- > 1 file changed, 8 insertions(+), 6 deletions(-) > > diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c > index 979bff4..75522b3 100644 > --- a/virt/kvm/kvm_main.c > +++ b/virt/kvm/kvm_main.c > @@ -2681,10 +2681,11 @@ static void hardware_enable_nolock(void *junk) > } > } > > -static void hardware_enable(void *junk) > +static void hardware_enable(void) > { > raw_spin_lock(_lock); > - hardware_enable_nolock(junk); > + if (kvm_usage_count) > + hardware_enable_nolock(NULL); > raw_spin_unlock(_lock); > } > > @@ -2698,10 +2699,11 @@ static void hardware_disable_nolock(void *junk) > kvm_arch_hardware_disable(NULL); > } > > -static void hardware_disable(void *junk) > +static void hardware_disable(void) > { > raw_spin_lock(_lock); > - hardware_disable_nolock(junk); > + if (kvm_usage_count) > + hardware_disable_nolock(NULL); > raw_spin_unlock(_lock); > } > > @@ -2756,12 +2758,12 @@ static int kvm_cpu_hotplug(struct notifier_block > *notifier, unsigned long val, > case CPU_DYING: > printk(KERN_INFO "kvm: disabling virtualization on CPU%d\n", > cpu); > - hardware_disable(NULL); > + hardware_disable(); > break; > case CPU_STARTING: > printk(KERN_INFO "kvm: enabling virtualization on CPU%d\n", > cpu); > - hardware_enable(NULL); > + hardware_enable(); > break; > } > return NOTIFY_OK; > -- Siemens AG, Corporate Technology, CT RTC ITP SES-DE Corporate Competence Center Embedded Linux -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 1/3] KVM: cleanup (physical) CPU hotplug
On 2013-09-16 16:06, Paolo Bonzini wrote: Remove the useless argument, and do not do anything if there are no VMs running at the time of the hotplug. kvm_cpu_hotplug already filters !kvm_usage_count. If we need the check to be under kvm_lock, drop that line as well. If that is not required (machine still halted?), drop the related changes here. Jan Cc: sta...@vger.kernel.org Cc: k...@vger.kernel.org Cc: g...@redhat.com Cc: jan.kis...@siemens.com Signed-off-by: Paolo Bonzini pbonz...@redhat.com --- virt/kvm/kvm_main.c | 14 -- 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c index 979bff4..75522b3 100644 --- a/virt/kvm/kvm_main.c +++ b/virt/kvm/kvm_main.c @@ -2681,10 +2681,11 @@ static void hardware_enable_nolock(void *junk) } } -static void hardware_enable(void *junk) +static void hardware_enable(void) { raw_spin_lock(kvm_lock); - hardware_enable_nolock(junk); + if (kvm_usage_count) + hardware_enable_nolock(NULL); raw_spin_unlock(kvm_lock); } @@ -2698,10 +2699,11 @@ static void hardware_disable_nolock(void *junk) kvm_arch_hardware_disable(NULL); } -static void hardware_disable(void *junk) +static void hardware_disable(void) { raw_spin_lock(kvm_lock); - hardware_disable_nolock(junk); + if (kvm_usage_count) + hardware_disable_nolock(NULL); raw_spin_unlock(kvm_lock); } @@ -2756,12 +2758,12 @@ static int kvm_cpu_hotplug(struct notifier_block *notifier, unsigned long val, case CPU_DYING: printk(KERN_INFO kvm: disabling virtualization on CPU%d\n, cpu); - hardware_disable(NULL); + hardware_disable(); break; case CPU_STARTING: printk(KERN_INFO kvm: enabling virtualization on CPU%d\n, cpu); - hardware_enable(NULL); + hardware_enable(); break; } return NOTIFY_OK; -- Siemens AG, Corporate Technology, CT RTC ITP SES-DE Corporate Competence Center Embedded Linux -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 1/3] KVM: cleanup (physical) CPU hotplug
Il 17/09/2013 09:57, Jan Kiszka ha scritto: Remove the useless argument, and do not do anything if there are no VMs running at the time of the hotplug. kvm_cpu_hotplug already filters !kvm_usage_count. If we need the check to be under kvm_lock, drop that line as well. If that is not required (machine still halted?), drop the related changes here. CPU_DYING is called under stop_machine, CPU_STARTING is not. So I should drop the test in kvm_cpu_hotplug. It's a bit clearer anyway to not rely on stop_machine. Paolo -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH 1/3] KVM: cleanup (physical) CPU hotplug
Remove the useless argument, and do not do anything if there are no VMs running at the time of the hotplug. Cc: sta...@vger.kernel.org Cc: k...@vger.kernel.org Cc: g...@redhat.com Cc: jan.kis...@siemens.com Signed-off-by: Paolo Bonzini --- virt/kvm/kvm_main.c | 14 -- 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c index 979bff4..75522b3 100644 --- a/virt/kvm/kvm_main.c +++ b/virt/kvm/kvm_main.c @@ -2681,10 +2681,11 @@ static void hardware_enable_nolock(void *junk) } } -static void hardware_enable(void *junk) +static void hardware_enable(void) { raw_spin_lock(_lock); - hardware_enable_nolock(junk); + if (kvm_usage_count) + hardware_enable_nolock(NULL); raw_spin_unlock(_lock); } @@ -2698,10 +2699,11 @@ static void hardware_disable_nolock(void *junk) kvm_arch_hardware_disable(NULL); } -static void hardware_disable(void *junk) +static void hardware_disable(void) { raw_spin_lock(_lock); - hardware_disable_nolock(junk); + if (kvm_usage_count) + hardware_disable_nolock(NULL); raw_spin_unlock(_lock); } @@ -2756,12 +2758,12 @@ static int kvm_cpu_hotplug(struct notifier_block *notifier, unsigned long val, case CPU_DYING: printk(KERN_INFO "kvm: disabling virtualization on CPU%d\n", cpu); - hardware_disable(NULL); + hardware_disable(); break; case CPU_STARTING: printk(KERN_INFO "kvm: enabling virtualization on CPU%d\n", cpu); - hardware_enable(NULL); + hardware_enable(); break; } return NOTIFY_OK; -- 1.8.3.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH 1/3] KVM: cleanup (physical) CPU hotplug
Remove the useless argument, and do not do anything if there are no VMs running at the time of the hotplug. Cc: sta...@vger.kernel.org Cc: k...@vger.kernel.org Cc: g...@redhat.com Cc: jan.kis...@siemens.com Signed-off-by: Paolo Bonzini pbonz...@redhat.com --- virt/kvm/kvm_main.c | 14 -- 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c index 979bff4..75522b3 100644 --- a/virt/kvm/kvm_main.c +++ b/virt/kvm/kvm_main.c @@ -2681,10 +2681,11 @@ static void hardware_enable_nolock(void *junk) } } -static void hardware_enable(void *junk) +static void hardware_enable(void) { raw_spin_lock(kvm_lock); - hardware_enable_nolock(junk); + if (kvm_usage_count) + hardware_enable_nolock(NULL); raw_spin_unlock(kvm_lock); } @@ -2698,10 +2699,11 @@ static void hardware_disable_nolock(void *junk) kvm_arch_hardware_disable(NULL); } -static void hardware_disable(void *junk) +static void hardware_disable(void) { raw_spin_lock(kvm_lock); - hardware_disable_nolock(junk); + if (kvm_usage_count) + hardware_disable_nolock(NULL); raw_spin_unlock(kvm_lock); } @@ -2756,12 +2758,12 @@ static int kvm_cpu_hotplug(struct notifier_block *notifier, unsigned long val, case CPU_DYING: printk(KERN_INFO kvm: disabling virtualization on CPU%d\n, cpu); - hardware_disable(NULL); + hardware_disable(); break; case CPU_STARTING: printk(KERN_INFO kvm: enabling virtualization on CPU%d\n, cpu); - hardware_enable(NULL); + hardware_enable(); break; } return NOTIFY_OK; -- 1.8.3.1 -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/