lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Wed, 6 May 2020 07:42:35 +0700 From: Suravee Suthikulpanit <suravee.suthikulpanit@....com> To: Paolo Bonzini <pbonzini@...hat.com>, Maxim Levitsky <mlevitsk@...hat.com>, kvm@...r.kernel.org Cc: linux-kernel@...r.kernel.org Subject: Re: AVIC related warning in enable_irq_window On 5/5/20 7:12 PM, Paolo Bonzini wrote: > On 05/05/20 09:55, Suravee Suthikulpanit wrote: >> On the other hand, would be it useful to implement >> kvm_make_all_cpus_request_but_self(), >> which sends request to all other vcpus excluding itself? > > Yes, that's also a possibility. It's not too much extra complication if > we add a new argument to kvm_make_vcpus_request_mask, like this: > > diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c > index 74bdb7bf3295..8f9dadb1ef42 100644 > --- a/virt/kvm/kvm_main.c > +++ b/virt/kvm/kvm_main.c > @@ -258,7 +258,7 @@ static inline bool kvm_kick_many_cpus(const struct cpumask *cpus, bool wait) > return true; > } > > -bool kvm_make_vcpus_request_mask(struct kvm *kvm, unsigned int req, > +bool kvm_make_vcpus_request_mask(struct kvm *kvm, unsigned int req, struct kvm_vcpu *except, > unsigned long *vcpu_bitmap, cpumask_var_t tmp) > { > int i, cpu, me; > @@ -270,6 +270,8 @@ bool kvm_make_vcpus_request_mask(struct kvm *kvm, unsigned int req, > kvm_for_each_vcpu(i, vcpu, kvm) { > if (vcpu_bitmap && !test_bit(i, vcpu_bitmap)) > continue; > + if (vcpu == except) > + continue; > > kvm_make_request(req, vcpu); > cpu = vcpu->cpu; > > > Paolo > Sounds good. I'll take care of this today. Suravee
Powered by blists - more mailing lists