[SRU][F][G][H] [PATCH 0/2] Fix misalignment buffer on Power9 DD2.1 (LP: 1902694)
patricia.domingues at canonical.com
patricia.domingues at canonical.com
Wed Nov 4 05:27:49 UTC 2020
BugLink: https://bugs.launchpad.net/bugs/1902694
SRU Justification:
[Impact]
* A data integrity issue was observed on POWER 9 (DD2.1) systems.
* It affects Ubuntu 20.04 with kernel 5.4.0-52 and Ubuntu 20.10 with kernel 5.8.0-26 kernel.
* The root cause is found in the compiling of p9_hmi_special_emu().
* When doing a VMX store (in __get_user_atomic_128_aligned()) to a buffer (vbuf), the buffer is not 128 bit aligned.
[Fix]
* 1da4a0272c54 "powerpc: Fix undetected data corruption with P9N DD2.1 VSX CI load emulation"
* d1781f237047 "selftests/powerpc: Make alignment handler test P9N DD2.1 vector CI load workaround"
[Test Case]
* A POWER 9 (DD2.1) bare metal system is needed that has either Ubuntu 20.04, 20.10 or 21.04 installed.
* It's best to test this based on a sample application and test case
"selftests/powerpc: Make alignment handler test P9N DD2.1 vector CI load workaround"
[Regression Potential]
* The regression risk is relatively moderate, because:
* it only happens with special VSX (vector) instructions in use, e.g. in p9_hmi_special_emu
* it happens on bare metal only and only on POWER 9 (DD2.1)
* and the changes are very overseeable (in total one effective code line per patch/commit)
* Since only p9_hmi_special_emu is touched, this will break in case of any regressions, but this is already broken based on this bug.
[Other]
* According to the reporter this affects Ubuntu 20.04 / 5.4.0-52 and 20.10 / 5.8.0-26.
* Since the development of Hirsute is already open the SRU is requested for Hirsute, too.
* Patches got upstream accepted in v5.10-rc1 and v5.10-rc2.
Michael Neuling (2):
powerpc: Fix undetected data corruption with P9N DD2.1 VSX CI load
emulation
selftests/powerpc: Make alignment handler test P9N DD2.1 vector CI
load workaround
arch/powerpc/kernel/traps.c | 2 +-
.../selftests/powerpc/alignment/alignment_handler.c | 8 ++++++--
2 files changed, 7 insertions(+), 3 deletions(-)
--
2.17.1
More information about the kernel-team
mailing list