Files
linux/arch/powerpc/kernel
Nathan Lynch 46f773f39e powerpc/rtas: use memmove for potentially overlapping buffer copy
[ Upstream commit 271208ee5e ]

Using memcpy() isn't safe when buf is identical to rtas_err_buf, which
can happen during boot before slab is up. Full context which may not
be obvious from the diff:

	if (altbuf) {
		buf = altbuf;
	} else {
		buf = rtas_err_buf;
		if (slab_is_available())
			buf = kmalloc(RTAS_ERROR_LOG_MAX, GFP_ATOMIC);
	}
	if (buf)
		memcpy(buf, rtas_err_buf, RTAS_ERROR_LOG_MAX);

This was found by inspection and I'm not aware of it causing problems
in practice. It appears to have been introduced by commit
033ef338b6 ("powerpc: Merge rtas.c into arch/powerpc/kernel"); the
old ppc64 version of this code did not have this problem.

Use memmove() instead.

Fixes: 033ef338b6 ("powerpc: Merge rtas.c into arch/powerpc/kernel")
Signed-off-by: Nathan Lynch <nathanl@linux.ibm.com>
Reviewed-by: Andrew Donnellan <ajd@linux.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://msgid.link/20230220-rtas-queue-for-6-4-v1-2-010e4416f13f@linux.ibm.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-05-11 23:03:31 +09:00
..
2021-12-09 22:41:21 +11:00
2022-05-05 22:12:44 +10:00
2022-05-08 22:15:40 +10:00
2022-05-05 22:12:44 +10:00
2022-09-26 23:00:13 +10:00
2022-02-07 21:03:10 +11:00
2022-02-07 21:03:10 +11:00
2022-02-07 21:03:10 +11:00
2022-09-26 23:00:14 +10:00
2020-12-04 01:01:09 +11:00
2023-03-17 08:50:30 +01:00
2022-05-08 22:15:40 +10:00
2022-09-26 22:47:37 +10:00
2022-09-26 23:00:14 +10:00
2021-12-09 22:41:21 +11:00
2022-09-26 23:00:13 +10:00
2022-05-08 22:15:40 +10:00
2022-09-26 23:00:13 +10:00
2022-05-08 22:15:40 +10:00
2022-05-08 22:15:40 +10:00
2022-05-08 22:15:40 +10:00
2022-09-26 20:58:18 +10:00
2022-05-05 22:12:44 +10:00
2022-05-08 22:15:40 +10:00
2022-05-08 22:15:40 +10:00
2022-09-26 23:00:13 +10:00
2022-09-26 22:47:37 +10:00
2022-09-28 19:22:09 +10:00
2022-09-26 23:00:13 +10:00
2021-12-09 22:41:21 +11:00