Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

arm32: Test killed by SIGILL : readahead01 accept03 splice07 #1145

Closed
chenxy1988 opened this issue Mar 14, 2024 · 2 comments
Closed

arm32: Test killed by SIGILL : readahead01 accept03 splice07 #1145

chenxy1988 opened this issue Mar 14, 2024 · 2 comments

Comments

@chenxy1988
Copy link
Contributor

On arm32 archtecture with kernel-6.6.20, the readahead01 accept03 splice07 cases are killed by SIGILL.
After checking the kernel log, seems memfd_create() failed due to no MFD_EXEC or MFD_NOEXEC_SEAL flag.

Using accept03 as an example, the following is the error log:

From kernel:
accept03[541]: memfd_create() called without MFD_EXEC or MFD_NOEXEC_SEAL set
accept03 output:
tst_test.c:1709: TINFO: LTP version: 20240129
tst_test.c:1593: TINFO: Timeout per run is 0h 00m 30s
accept03.c:48: TPASS: accept() on file : ENOTSOCK (88)
accept03.c:48: TPASS: accept() on O_PATH file : EBADF (9)
accept03.c:48: TPASS: accept() on directory : ENOTSOCK (88)
accept03.c:48: TPASS: accept() on /dev/zero : ENOTSOCK (88)
accept03.c:48: TPASS: accept() on /proc/self/maps : ENOTSOCK (88)
accept03.c:48: TPASS: accept() on pipe read end : ENOTSOCK (88)
accept03.c:48: TPASS: accept() on pipe write end : ENOTSOCK (88)
accept03.c:48: TPASS: accept() on epoll : ENOTSOCK (88)
accept03.c:48: TPASS: accept() on eventfd : ENOTSOCK (88)
accept03.c:48: TPASS: accept() on signalfd : ENOTSOCK (88)
accept03.c:48: TPASS: accept() on timerfd : ENOTSOCK (88)
accept03.c:48: TPASS: accept() on pidfd : ENOTSOCK (88)
tst_fd.c:151: TCONF: Skipping fanotify: ENOSYS (38)
accept03.c:48: TPASS: accept() on inotify : ENOTSOCK (88)
tst_fd.c:170: TCONF: Skipping userfaultfd: ENOSYS (38)
accept03.c:48: TPASS: accept() on perf event : ENOTSOCK (88)
accept03.c:48: TPASS: accept() on io uring : ENOTSOCK (88)
accept03.c:48: TPASS: accept() on bpf map : ENOTSOCK (88)
accept03.c:48: TPASS: accept() on fsopen : ENOTSOCK (88)
accept03.c:48: TPASS: accept() on fspick : ENOTSOCK (88)
accept03.c:48: TPASS: accept() on open_tree : EBADF (9)
accept03.c:48: TPASS: accept() on memfd : ENOTSOCK (88)
tst_test.c:1653: TBROK: Test killed by SIGILL!

So is there special options need to be set on arm32 SoC? Thanks!

@metan-ucw
Copy link
Member

First of all the warning about missing MFD flags does not seem to be the cause, that is supposed to be only a warning added to kernel in commit 434ed3350f57c03a9654fe0619755cc137a58935 and later removed in 2562d67b1bdf91c7395b0225d60fdeb26b4bc5a0.

The SIGILL means that CPU does not understand the binary it's supposed to execute, that likely means that something got either miscompiled or corrupted. So I do not think that we can help you here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants