[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