Message ID | 20190514065750.31761-1-po-hsu.lin@canonical.com |
---|---|
Headers | show |
Series | selftests/powerpc: Add alignment handler selftest | expand |
On 5/13/19 11:57 PM, Po-Hsu Lin wrote: > 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 > Acked-by: Connor Kuehl <connor.kuehl@canonical.com>
On 14.05.19 08:57, Po-Hsu Lin wrote: > 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 > Acked-by: Stefan Bader <stefan.bader@canonical.com>
On 5/14/19 8:57 AM, Po-Hsu Lin wrote: > 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 > Applied to bionic/master-next branch. Thanks, Kleber