[B][SRU][PATCH 0/2] selftests/powerpc: Add alignment handler selftest

Po-Hsu Lin po-hsu.lin at canonical.com
Tue May 14 06:57:48 UTC 2019


BugLink: https://bugs.launchpad.net/bugs/1828935

== Justification ==
There is a powerpc/alignment_handler available in the upstream for
PowerPC self-testing tool.

Bring this in to cover more bits in the ubuntu_kernel_selftest test
suite.

== Fix ==
* 8d191587 (selftests/powerpc: Add alignment handler selftest)
* ecdf06e1 (selftests/powerpc: Fix to use ucontext_t instead of struct ucontext)

Both of them can be cherry-picked into Bionic kernel.
The second patch is essential to fix a build error.

It's already available in Cosmic and onward.

== Test ==
Test was successfully built and passed on a Power9 node with Bionic
kernel:
selftests: alignment_handler
========================================
test: test_alignment_handler_vsx_206
tags: git_version:Ubuntu-4.15.0-48.51-2-g705784d93589-dirty
VSX: 2.06B
 Doing lxvd2x:	PASSED
 Doing lxvw4x:	PASSED
 Doing lxsdx:	PASSED
 Doing lxvdsx:	PASSED
 Doing stxvd2x:	PASSED
 Doing stxvw4x:	PASSED
 Doing stxsdx:	PASSED
success: test_alignment_handler_vsx_206
test: test_alignment_handler_vsx_207
tags: git_version:Ubuntu-4.15.0-48.51-2-g705784d93589-dirty
VSX: 2.07B
 Doing lxsspx:	PASSED
 Doing lxsiwax:	PASSED
 Doing lxsiwzx:	PASSED
 Doing stxsspx:	PASSED
 Doing stxsiwx:	PASSED
success: test_alignment_handler_vsx_207
test: test_alignment_handler_vsx_300
tags: git_version:Ubuntu-4.15.0-48.51-2-g705784d93589-dirty
VSX: 3.00B
 Doing lxsd:	PASSED
 Doing lxsibzx:	PASSED
 Doing lxsihzx:	PASSED
 Doing lxssp:	PASSED
 Doing lxv:	PASSED
 Doing lxvb16x:	PASSED
 Doing lxvh8x:	PASSED
 Doing lxvx:	PASSED
 Doing lxvwsx:	PASSED
 Doing lxvl:	PASSED
 Doing lxvll:	PASSED
 Doing stxsd:	PASSED
 Doing stxsibx:	PASSED
 Doing stxsihx:	PASSED
 Doing stxssp:	PASSED
 Doing stxv:	PASSED
 Doing stxvb16x:	PASSED
 Doing stxvh8x:	PASSED
 Doing stxvx:	PASSED
 Doing stxvl:	PASSED
 Doing stxvll:	PASSED
success: test_alignment_handler_vsx_300
test: test_alignment_handler_integer
tags: git_version:Ubuntu-4.15.0-48.51-2-g705784d93589-dirty
Integer
 Doing lbz:	PASSED
 Doing lbzu:	PASSED
 Doing lbzx:	PASSED
 Doing lbzux:	PASSED
 Doing lhz:	PASSED
 Doing lhzu:	PASSED
 Doing lhzx:	PASSED
 Doing lhzux:	PASSED
 Doing lha:	PASSED
 Doing lhau:	PASSED
 Doing lhax:	PASSED
 Doing lhaux:	PASSED
 Doing lhbrx:	PASSED
 Doing lwz:	PASSED
 Doing lwzu:	PASSED
 Doing lwzx:	PASSED
 Doing lwzux:	PASSED
 Doing lwa:	PASSED
 Doing lwax:	PASSED
 Doing lwaux:	PASSED
 Doing lwbrx:	PASSED
 Doing ld:	PASSED
 Doing ldu:	PASSED
 Doing ldx:	PASSED
 Doing ldux:	PASSED
 Doing ldbrx:	PASSED
 Doing lmw:	PASSED
 Doing stb:	PASSED
 Doing stbx:	PASSED
 Doing stbu:	PASSED
 Doing stbux:	PASSED
 Doing sth:	PASSED
 Doing sthx:	PASSED
 Doing sthu:	PASSED
 Doing sthux:	PASSED
 Doing sthbrx:	PASSED
 Doing stw:	PASSED
 Doing stwx:	PASSED
 Doing stwu:	PASSED
 Doing stwux:	PASSED
 Doing stwbrx:	PASSED
 Doing std:	PASSED
 Doing stdx:	PASSED
 Doing stdu:	PASSED
 Doing stdux:	PASSED
 Doing stdbrx:	PASSED
 Doing stmw:	PASSED
success: test_alignment_handler_integer
test: test_alignment_handler_vmx
tags: git_version:Ubuntu-4.15.0-48.51-2-g705784d93589-dirty
VMX
 Doing lvx:	PASSED
 Doing stvx:	PASSED
 Doing stvebx:	PASSED
 Doing stvehx:	PASSED
 Doing stvewx:	PASSED
 Doing stvxl:	PASSED
success: test_alignment_handler_vmx
test: test_alignment_handler_fp
tags: git_version:Ubuntu-4.15.0-48.51-2-g705784d93589-dirty
Floating point
 Doing lfd:	PASSED
 Doing lfdx:	PASSED
 Doing lfdp:	PASSED
 Doing lfdpx:	PASSED
 Doing lfdu:	PASSED
 Doing lfdux:	PASSED
 Doing lfs:	PASSED
 Doing lfsx:	PASSED
 Doing lfsu:	PASSED
 Doing lfsux:	PASSED
 Doing lfiwzx:	PASSED
 Doing lfiwax:	PASSED
 Doing stfd:	PASSED
 Doing stfdx:	PASSED
 Doing stfdp:	PASSED
 Doing stfdpx:	PASSED
 Doing stfdu:	PASSED
 Doing stfdux:	PASSED
 Doing stfs:	PASSED
 Doing stfsx:	PASSED
 Doing stfsu:	PASSED
 Doing stfsux:	PASSED
 Doing stfiwx:	PASSED
success: test_alignment_handler_fp
ok 1..5 selftests: alignment_handler [PASS]

== Regression Potential ==
No regression is expected, this is just adding a new test case to cover
more tests.


Andrew Donnellan (1):
  selftests/powerpc: Add alignment handler selftest

Harish (1):
  selftests/powerpc: Fix to use ucontext_t instead of struct ucontext

 tools/testing/selftests/powerpc/alignment/Makefile |   3 +-
 .../powerpc/alignment/alignment_handler.c          | 491 +++++++++++++++++++++
 2 files changed, 493 insertions(+), 1 deletion(-)
 create mode 100644 tools/testing/selftests/powerpc/alignment/alignment_handler.c

-- 
2.7.4




More information about the kernel-team mailing list