mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-01 22:54:01 +00:00
s390/maccess: add no DAT mode to kernel_write
[ Upstream commit d6df52e999
]
To be able to patch kernel code before paging is initialized do plain
memcpy if DAT is off. This is required to enable early jump label
initialization.
Reviewed-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
627d15eecb
commit
1a70857590
1 changed files with 9 additions and 5 deletions
|
@ -62,12 +62,16 @@ notrace void *s390_kernel_write(void *dst, const void *src, size_t size)
|
|||
long copied;
|
||||
|
||||
spin_lock_irqsave(&s390_kernel_write_lock, flags);
|
||||
if (!(flags & PSW_MASK_DAT)) {
|
||||
memcpy(dst, src, size);
|
||||
} else {
|
||||
while (size) {
|
||||
copied = s390_kernel_write_odd(tmp, src, size);
|
||||
tmp += copied;
|
||||
src += copied;
|
||||
size -= copied;
|
||||
}
|
||||
}
|
||||
spin_unlock_irqrestore(&s390_kernel_write_lock, flags);
|
||||
|
||||
return dst;
|
||||
|
|
Loading…
Reference in a new issue