KVM: s390/diag: fix racy access of physical cpu number in diag 9c handler
authorChristian Borntraeger <borntraeger@linux.ibm.com>
Mon, 15 May 2023 08:42:34 +0000 (10:42 +0200)
committerJanosch Frank <frankja@linux.ibm.com>
Fri, 16 Jun 2023 09:08:09 +0000 (11:08 +0200)
commit0bc380beb78aa352eadbc21d934dd9606fcee808
tree77feadb3b7dd8ca8d224623b2d19900441df2adc
parent246be7d2720ea9a795b576067ecc5e5c7a1e7848
KVM: s390/diag: fix racy access of physical cpu number in diag 9c handler

We do check for target CPU == -1, but this might change at the time we
are going to use it. Hold the physical target CPU in a local variable to
avoid out-of-bound accesses to the cpu arrays.

Cc: Pierre Morel <pmorel@linux.ibm.com>
Fixes: 87e28a15c42c ("KVM: s390: diag9c (directed yield) forwarding")
Reported-by: Marc Hartmayer <mhartmay@linux.ibm.com>
Reviewed-by: Nico Boehr <nrb@linux.ibm.com>
Reviewed-by: Pierre Morel <pmorel@linux.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@linux.ibm.com>
Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
arch/s390/kvm/diag.c