Hi Po-Hsu,
Sorry this has taken so long to get on my radar.
On a trusty arm64 system, can you report on the output of
/proc/self/personality? At one point, IIRC, it was setting itself to
READ_IMPLIES_EXEC, which caused the ./nx-test executions to succeed when
they should have SIGSEGV'ed (exiting with return code -11/139).
For the read-implies-exec cases (nx-test-rie), stack and other data
segments are marked as executable as well, so those should succeed.
I will go ahead and mark arm64 as expecting normal results non-
executable data segments in QRT, and we can see what breaks there.
Thanks!
** Changed in: qa-regression-testing
Status: New => In Progress
** Changed in: qa-regression-testing
Assignee: (unassigned) => Steve Beattie (sbeattie)
--
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1712038
Title:
ubuntu_qrt_kernel_security test_060_nx failed on Trusty ARM64
Status in QA Regression Testing:
In Progress
Status in linux package in Ubuntu:
Incomplete
Bug description:
From the error output, this bug was marked as Failed, instead of being
skipped:
NX bit is working ... (skipped: ARM64 older than 4.4 has
READ_IMPLIES_EXEC personality set) FAIL
FAIL: test_060_nx (__main__.KernelSecurityTest)
NX bit is working
----------------------------------------------------------------------
Traceback (most recent call last):
File "./test-kernel-security.py", line 460, in test_060_nx
self.assertShellExitEquals(expected, ["./nx-test", "data"])
File
"/home/ubuntu/autotest/client/tmp/ubuntu_qrt_kernel_security/src/qa-regression-testing/scripts/testlib.py",
line 1134, in assertShellExitEquals
self.assertEqual(expected, rc, msg + result + report)
AssertionError: Got exit code -11, expected 0
Command: './nx-test', 'data'
Output:
rodata:0x4010c0
data: 0x4120a8
bss: 0x4220c8
brk: 0x20de1010
rw: 0x7f833a1000
rwx: 0x7f833a0000
stack: 0x7fdd19bfd8
Dump of /proc/self/maps:
00400000-00402000 r-xp 00000000 08:02 10096524
/home/ubuntu/autotest/client/tmp/ubuntu_qrt_kernel_security/src/qa-regression-testing/scripts/kernel-security/nx/nx-test
00411000-00412000 r--p 00001000 08:02 10096524
/home/ubuntu/autotest/client/tmp/ubuntu_qrt_kernel_security/src/qa-regression-testing/scripts/kernel-security/nx/nx-test
00412000-00413000 rw-p 00002000 08:02 10096524
/home/ubuntu/autotest/client/tmp/ubuntu_qrt_kernel_security/src/qa-regression-testing/scripts/kernel-security/nx/nx-test
00413000-00423000 rw-p 00000000 00:00 0
20de1000-20e03000 rw-p 00000000 00:00 0
[heap]
7f8320c000-7f8322c000 rw-p 00000000 00:00 0
7f8322c000-7f8335f000 r-xp 00000000 08:02 4718846
/lib/aarch64-linux-gnu/libc-2.19.so
7f8335f000-7f8336f000 ---p 00133000 08:02 4718846
/lib/aarch64-linux-gnu/libc-2.19.so
7f8336f000-7f83373000 r--p 00133000 08:02 4718846
/lib/aarch64-linux-gnu/libc-2.19.so
7f83373000-7f83375000 rw-p 00137000 08:02 4718846
/lib/aarch64-linux-gnu/libc-2.19.so
7f83375000-7f83379000 rw-p 00000000 00:00 0
7f83379000-7f83395000 r-xp 00000000 08:02 4718835
/lib/aarch64-linux-gnu/ld-2.19.so
7f83399000-7f8339b000 rw-p 00000000 00:00 0
7f833a0000-7f833a1000 rwxp 00000000 00:00 0
7f833a1000-7f833a2000 rw-p 00000000 00:00 0
7f833a2000-7f833a4000 r-xp 00000000 00:00 0
[vdso]
7f833a4000-7f833a5000 r--p 0001b000 08:02 4718835
/lib/aarch64-linux-gnu/ld-2.19.so
7f833a5000-7f833a7000 rw-p 0001c000 08:02 4718835
/lib/aarch64-linux-gnu/ld-2.19.so
7fdd17c000-7fdd19d000 rw-p 00000000 00:00 0
[stack]
Attempting to execute function at 0x4120a8
If this program seg-faults, the region was enforced as non-executable...
Compared to other skipped test, it should be marked as OK, like
PR_SET_SECCOMP works ... (skipped: not available on ARM64) ok
To manage notifications about this bug go to:
https://bugs.launchpad.net/qa-regression-testing/+bug/1712038/+subscriptions
--
Mailing list: https://launchpad.net/~kernel-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~kernel-packages
More help : https://help.launchpad.net/ListHelp