On Mon, 13 Jun 2016 15:25:30 +0200 Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote: > The race between creating the irqchip and the first VCPU is > currently fixed by checking the presence of an irqchip before > updating kvm->online_vcpus, and undoing the whole VCPU creation > if someone created the irqchip in the meanwhile. > > Instead, introduce a new field in struct kvm that will count VCPUs > under a mutex, without the atomic access and memory ordering that we > need elsewhere to protect the vcpus array. This also plugs the race > and is more easily applicable in all similar circumstances. > > Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx> > --- > include/linux/kvm_host.h | 8 ++++++++ > virt/kvm/kvm_main.c | 23 +++++++++++++++++------ > 2 files changed, 25 insertions(+), 6 deletions(-) Reviewed-by: Cornelia Huck <cornelia.huck@xxxxxxxxxx> -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html