Re: arm64: fp-stress: BUG: KFENCE: memory corruption in fpsimd_release_task

From: Mark Brown
Date: Mon May 22 2023 - 18:13:01 EST


On Tue, May 16, 2023 at 11:58:40AM +0530, Naresh Kamboju wrote:

> # To install tuxrun on your system globally:
> # sudo pip3 install -U tuxrun==0.42.0

I'm not thrilled about the idea of installing some Python package
outside of my distro package manager, especially not running as root,
but I *do* have a checked out copy of tuxrun which normally seems to do
something...

> #
> # See https://tuxrun.org/ for complete documentation.
>
> tuxrun \
> --runtime podman \
> --device fvp-aemva \
> --boot-args rw \
> --kernel https://storage.tuxsuite.com/public/linaro/lkft/builds/2Pq5NvLiBcWRMuy6lXftDVQMvca/Image.gz
> \
> --modules https://storage.tuxsuite.com/public/linaro/lkft/builds/2Pq5NvLiBcWRMuy6lXftDVQMvca/modules.tar.xz
> \
> --rootfs https://storage.tuxboot.com/debian/bookworm/arm64/rootfs.ext4.xz \
> --parameters SKIPFILE=skipfile-lkft.yaml \
> --parameters KSELFTEST=https://storage.tuxsuite.com/public/linaro/lkft/builds/2Pq5NvLiBcWRMuy6lXftDVQMvca/kselftest.tar.xz
> \
> --image tuxrun:fvp \
> --tests kselftest-arm64 \
> --timeouts boot=60 kselftest-arm64=60

This command does not work for me, after fixing up the fact that
multiple lines have continuation characters that are nonfunctional due
to being wrapped onto the next line I get:

| Error: error getting default registries to try: short-name "tuxrun:fvp" did not resolve to an alias and no unqualified-search registries are defined in "/etc/containers/registries.conf"

Trying tip of tree tuxrun gives the same result. Grovelling around in
the documentation I see there's a need to manually build some containers
for the FVP so I was able to get the above command to boot with the
--image option removed and switching to docker as the runtime but after
faffing for a very large amount of time even by the standards of the
model it appeared to just shut down the model without starting
kselftest, possibly due to having mounted some of the filesystems read
only:

2023-05-22T21:03:43 Using a character delay of 50 (ms)
2023-05-22T21:03:43 #⏎
2023-05-22T21:03:43 [?2004l[?2004hroot@runner-pqlayms-project-40964107-concurrent-5:~# #
2023-05-22T21:03:43 lava-test-shell: Wait for prompt ['root@(.*):[/~]#'] (timeout 01:00:00)
2023-05-22T21:03:43 #
2023-05-22T21:03:43 Using /lava-1
2023-05-22T21:03:43 Sending with 50 millisecond of delay
2023-05-22T21:03:43 export SHELL=/bin/sh⏎
2023-05-22T21:03:45 [?2004l[?2004hroot@runner-pqlayms-project-40964107-concurrent-5:~# export SHELL=/bin/sh
2023-05-22T21:03:45 export SHELL=/bin/sh
2023-05-22T21:03:45 Sending with 50 millisecond of delay
2023-05-22T21:03:45 . /lava-1/environment⏎
2023-05-22T21:03:47 [?2004l[?2004hroot@runner-pqlayms-project-40964107-concurrent-5:~# . /lava-1/environment
2023-05-22T21:03:47 . /lava-1/environment
2023-05-22T21:03:47 Will listen to feedbacks from 'terminal_1' for 1 second
2023-05-22T21:03:47 Will listen to feedbacks from 'terminal_2' for 1 second
2023-05-22T21:03:47 Will listen to feedbacks from 'terminal_3' for 1 second
2023-05-22T21:03:47 Sending with 50 millisecond of delay
2023-05-22T21:03:47 /lava-1/bin/lava-test-runner /lava-1/0⏎
2023-05-22T21:03:51 [?2004l[?2004hroot@runner-pqlayms-project-40964107-concurrent-5:~# /lava-1/bin/lava-test-runner /lava-1/0
2023-05-22T21:03:51 Test shell timeout: 10s (minimum of the action and connection timeout)
2023-05-22T21:03:51 /lava-1/bin/lava-test-runne r /lava-1/0
2023-05-22T21:03:52 [?2004lmkdir: cannot create directory ‘/lava-1/0/results’: Read-only file system
2023-05-22T21:03:53 mv: cannot move '/lava-1/0/lava-test-runner.conf' to '/lava-1/0/lava-test-runner.conf-1684789015': Read-only file system
2023-05-22T21:03:54 cat: /lava-1/0/lava-test-runner.conf-1684789015: No such file or directory
2023-05-22T21:03:55 ok: lava_test_shell seems to have completed
2023-05-22T21:03:55 end: 3.1 lava-test-shell (duration 00:00:12) [common]
2023-05-22T21:03:55 end: 3 lava-test-retry (duration 00:00:12) [common]
2023-05-22T21:03:55 start: 4 finalize (timeout 00:10:00) [common]
2023-05-22T21:03:55 start: 4.1 power-off (timeout 00:01:00) [common]
2023-05-22T21:03:55 end: 4.1 power-off (duration 00:00:00) [common]
2023-05-22T21:03:55 start: 4.2 read-feedback (timeout 00:10:00) [common]

Attempting to use podman as the runtime as your command said had various
problems:

2023-05-22T21:07:01 start: 2.1.1 check-fvp-version (timeout 01:00:00) [common]
2023-05-22T21:07:01 sh -c docker run --rm fvp:aemva-11.21.15 /opt/model/FVP_AEMvA/models/Linux64_GCC-9.3/FVP_Base_RevC-2xAEMvA --version
2023-05-22T21:07:01 Parsed command exited 1.
2023-05-22T21:07:01 action: check-fvp-version
command: ['sh', '-c', 'docker run --rm fvp:aemva-11.21.15 /opt/model/FVP_AEMvA/models/Linux64_GCC-9.3/FVP_Base_RevC-2xAEMvA --version']
message: Command '['sh', '-c', 'docker run --rm fvp:aemva-11.21.15 /opt/model/FVP_AEMvA/models/Linux64_GCC-9.3/FVP_Base_RevC-2xAEMvA --version']' returned non-zero exit status 1.
output: Missing runtime '/usr/bin/podman'
return code: 1

(I do have podman installed though I rarely use it, this looks to be in
the LAVA container though)

> Test log links:
> ========
>
> - https://qa-reports.linaro.org/lkft/linux-stable-rc-linux-6.1.y/build/v6.1.28-240-gb82733c0ff99/testrun/17007082/suite/log-parser-test/test/check-kernel-kfence/log
> - https://qa-reports.linaro.org/lkft/linux-stable-rc-linux-6.1.y/build/v6.1.28-240-gb82733c0ff99/testrun/17007082/suite/log-parser-test/tests/
> - https://qa-reports.linaro.org/lkft/linux-stable-rc-linux-6.1.y/build/v6.1.28-240-gb82733c0ff99/testrun/17007268/suite/kselftest-arm64/tests/
>
> - https://qa-reports.linaro.org/lkft/linux-stable-rc-linux-6.3.y/build/v6.3.2-247-g5a952cfef67c/testrun/17015127/suite/log-parser-test/test/check-kernel-bug/log
> - https://qa-reports.linaro.org/lkft/linux-stable-rc-linux-6.3.y/build/v6.3.2-247-g5a952cfef67c/testrun/17015127/suite/log-parser-test/tests/
> - https://qa-reports.linaro.org/lkft/linux-stable-rc-linux-6.3.y/build/v6.3.2-247-g5a952cfef67c/testrun/17015127/suite/kselftest-arm64/tests/

None of these seem to provide me with information like what kernel
config was used but I did manage to find

https://storage.tuxsuite.com/public/linaro/lkft/builds/2Pq5NvLiBcWRMuy6lXftDVQMvca/config

which might be it? Or one of them? However even trying to use that I'm
unable to reproduce issues with either the FVP or qemu.

Attachment: signature.asc
Description: PGP signature