linux/arch/s390/kvm
David Hildenbrand 3da2a62a61 KVM: s390: fix memory overwrites when not using SCA entries
commit f07afa0462 upstream.

Even if we don't have extended SCA support, we can have more than 64 CPUs
if we don't enable any HW features that might use the SCA entries.

Now, this works just fine, but we missed a return, which is why we
would actually store the SCA entries. If we have more than 64 CPUs, this
means writing outside of the basic SCA - bad.

Let's fix this. This allows > 64 CPUs when running nested (under vSIE)
without random crashes.

Fixes: a6940674c3 ("KVM: s390: allow 255 VCPUs when sca entries aren't used")
Reported-by: Christian Borntraeger <borntraeger@de.ibm.com>
Tested-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: David Hildenbrand <david@redhat.com>
Message-Id: <20180306132758.21034-1-david@redhat.com>
Cc: stable@vger.kernel.org
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2018-03-15 10:54:32 +01:00
..
diag.c First batch of KVM changes for 4.14 2017-09-08 15:18:36 -07:00
gaccess.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
gaccess.h s390: rename psw_bits enums 2017-06-12 16:26:02 +02:00
guestdbg.c KVM: s390: guestdbg: fix range check 2017-08-31 13:49:39 +02:00
intercept.c KVM: s390: Support keyless subset guest mode 2017-04-21 11:08:11 +02:00
interrupt.c KVM: s390: take care of clock-comparator sign control 2018-03-08 22:41:21 -08:00
irq.h KVM: s390: irq routing for adapter interrupts. 2014-03-21 13:43:00 +01:00
Kconfig License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
kvm-s390.c KVM: s390: fix memory overwrites when not using SCA entries 2018-03-15 10:54:32 +01:00
kvm-s390.h KVM: s390: provide only a single function for setting the tod (fix SCK) 2018-03-08 22:41:21 -08:00
Makefile KVM: s390: vsie: initial support for nested virtualization 2016-06-21 09:43:33 +02:00
priv.c KVM: s390: provide only a single function for setting the tod (fix SCK) 2018-03-08 22:41:21 -08:00
sigp.c KVM: s390: Support Configuration z/Architecture Mode 2017-08-28 16:25:13 +02:00
sthyi.c KVM: s390: sthyi: remove invalid guest write access 2017-08-29 15:15:56 +02:00
trace-s390.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
trace.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
vsie.c First batch of KVM changes for 4.14 2017-09-08 15:18:36 -07:00