From: Martin Schwidefsky <schwidefsky@de.ibm.com>
To: Avi Kivity <avi@redhat.com>
Cc: Carsten Otte <cotte@de.ibm.com>,
Marcelo Tossati <mtosatti@redhat.com>,
Christian Borntraeger <borntraeger@de.ibm.com>,
Heiko Carstens <heiko.carstens@de.ibm.com>,
Cornelia Huck <cornelia.huck@de.ibm.com>,
KVM <kvm@vger.kernel.org>,
Joachim von Buttlar <joachim_von_buttlar@de.ibm.com>,
Jens Freimann <jfrei@de.ibm.com>,
Constantin Werner <constantin.werner@de.ibm.com>
Subject: Re: [patch 01/12] [PATCH] kvm-s390: ioctl to switch to user controlled virtual machines
Date: Thu, 1 Dec 2011 15:20:16 +0100 [thread overview]
Message-ID: <20111201152016.6de7eea3@de.ibm.com> (raw)
In-Reply-To: <4ED77DD7.7090507@redhat.com>
On Thu, 01 Dec 2011 15:15:03 +0200
Avi Kivity <avi@redhat.com> wrote:
> > +
> > + if (kvm->arch.gmap)
> > + gmap_free(kvm->arch.gmap);
> > +
> > + kvm->arch.gmap = NULL;
>
> Locking?
>
> What happens if a vcpu is created afterwards?
>
> I guess you don't mind too much since this is a privileged interface for
> a single purpose.
That is indeed a race. A malicious user space could create a new cpu with
KVM_CREATE_VCPU on another thread after the for loop checked that there
are no VCPUs. The new VCPU could then pick up the kvm->arch.gmap and use it
while the caller of KVM_S390_ENABLE_UCONTROL frees the structure.
The kvm_s390_enable_ucontrol function needs to lock with the kvm->lock mutex.
--
blue skies,
Martin.
"Reality continues to ruin my life." - Calvin.
next prev parent reply other threads:[~2011-12-01 14:20 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-12-01 12:57 [patch 00/12] User controlled virtual machines Carsten Otte
2011-12-01 12:57 ` [patch 01/12] [PATCH] kvm-s390: ioctl to switch to user " Carsten Otte
2011-12-01 13:15 ` Avi Kivity
2011-12-01 13:31 ` Avi Kivity
2011-12-01 14:20 ` Martin Schwidefsky [this message]
2011-12-01 12:57 ` [patch 02/12] [PATCH] kvm-s390-ucontrol: per vcpu address spaces Carsten Otte
2011-12-01 13:19 ` Avi Kivity
2011-12-01 12:57 ` [patch 03/12] [PATCH] kvm-s390-ucontrol: export page faults to user Carsten Otte
2011-12-01 12:57 ` [patch 04/12] [PATCH] kvm-s390-ucontrol: export SIE control block " Carsten Otte
2011-12-01 13:25 ` Avi Kivity
2011-12-01 13:26 ` Avi Kivity
2011-12-01 13:59 ` Carsten Otte
2011-12-01 14:04 ` Avi Kivity
2011-12-01 12:57 ` [patch 05/12] [PATCH] kvm-s390-ucontrol: disable in-kernel handling of SIE intercepts Carsten Otte
2011-12-01 12:57 ` [patch 06/12] [PATCH] kvm-s390-ucontrol: disable in-kernel irq stack Carsten Otte
2011-12-01 12:57 ` [patch 07/12] [PATCH] kvm-s390-ucontrol: interface to inject faults on a vcpu page table Carsten Otte
2011-12-01 12:57 ` [patch 08/12] [PATCH] kvm-s390-ucontrol: disable sca Carsten Otte
2011-12-01 12:57 ` [patch 09/12] [PATCH] kvm-s390: fix assumption for KVM_MAX_VCPUS Carsten Otte
2011-12-01 12:57 ` [patch 10/12] [PATCH] kvm-s390: storage key interface Carsten Otte
2011-12-01 12:57 ` [patch 11/12] [PATCH] kvm-s390-ucontrol: announce capability for user controlled vms Carsten Otte
2011-12-01 12:57 ` [patch 12/12] From: Carsten Otte <cotte@de.ibm.com> Carsten Otte
2011-12-01 13:10 ` [patch 00/12] User controlled virtual machines Avi Kivity
2011-12-01 13:33 ` Avi Kivity
2011-12-02 11:52 ` Carsten Otte
-- strict thread matches above, loose matches on Subject: below --
2011-12-08 9:12 [patch 00/12] Ucontrol patchset V2 Carsten Otte
2011-12-08 9:12 ` [patch 01/12] [PATCH] kvm-s390: ioctl to switch to user controlled virtual machines Carsten Otte
2011-12-08 9:25 ` Sasha Levin
2011-12-08 9:27 ` Carsten Otte
2011-12-08 9:45 ` Avi Kivity
2011-12-08 9:53 ` Sasha Levin
2011-12-08 9:59 ` Avi Kivity
2011-12-08 10:18 ` Alexander Graf
2011-12-08 11:48 ` Carsten Otte
2011-12-08 13:16 ` Alexander Graf
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20111201152016.6de7eea3@de.ibm.com \
--to=schwidefsky@de.ibm.com \
--cc=avi@redhat.com \
--cc=borntraeger@de.ibm.com \
--cc=constantin.werner@de.ibm.com \
--cc=cornelia.huck@de.ibm.com \
--cc=cotte@de.ibm.com \
--cc=heiko.carstens@de.ibm.com \
--cc=jfrei@de.ibm.com \
--cc=joachim_von_buttlar@de.ibm.com \
--cc=kvm@vger.kernel.org \
--cc=mtosatti@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.