s390/early: fix sclp_early_sccb variable lifetime
authorAlexander Gordeev <agordeev@linux.ibm.com>
Thu, 15 Dec 2022 07:00:34 +0000 (08:00 +0100)
committerHeiko Carstens <hca@linux.ibm.com>
Fri, 13 Jan 2023 13:15:04 +0000 (14:15 +0100)
commit639886b71ddef085a0e7bb1f225b8ae3eda5c06f
tree9ee974d1a4ed1db5c0b139656bbcb1f9487f40f1
parent9c3205b2b062420c26b33924b910880889acf832
s390/early: fix sclp_early_sccb variable lifetime

Commit ada1da31ce34 ("s390/sclp: sort out physical vs
virtual pointers usage") fixed the notion of virtual
address for sclp_early_sccb pointer. However, it did
not take into account that kasan_early_init() can also
output messages and sclp_early_sccb should be adjusted
by the time kasan_early_init() is called.

Currently it is not a problem, since virtual and physical
addresses on s390 are the same. Nevertheless, should they
ever differ, this would cause an invalid pointer access.

Fixes: ada1da31ce34 ("s390/sclp: sort out physical vs virtual pointers usage")
Reviewed-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
arch/s390/kernel/early.c
arch/s390/kernel/head64.S
drivers/s390/char/sclp_early.c