Mark Brown broonie@kernel.org writes:
On Mon, Feb 19, 2024 at 11:15:57PM -0300, Thiago Jung Bauermann wrote:
The only issue as can be seen above is that the can_call_function test is failing. The child is getting a GCS Segmentation fault when returning from fork().
I tried debugging it with GDB, but I don't see what's wrong since the address in LR matches the first entry in GCSPR. Here is the debug session:
I believe based on prior discussions that you're running this using shrinkwrap - can you confirm exactly how please, including things like which firmware configuration you're using? I'm using current git with
shrinkwrap run \ --rtvar KERNEL=arch/arm64/boot/Image \ --rtvar ROOTFS=${ROOTFS} \ --rtvar CMDLINE="${CMDLINE}" \ --overlay=arch/v9.4.yaml ns-edk2.yaml
and a locally built yocto and everything seems perfectly happy.
Yes, this is how I'm running it:
CMDLINE="Image dtb=fdt.dtb console=ttyAMA0 earlycon=pl011,0x1c090000 root=/dev/vda2 ip=dhcp maxcpus=1"
shrinkwrap run \ --rtvar=KERNEL=Image-gcs-v8-v6.7-rc4-14743-ga551a7d7af93 \ --rtvar=ROOTFS=$HOME/VMs/ubuntu-aarch64.img \ --rtvar=CMDLINE="$CMDLINE" \ ns-edk2.yaml
I ran the following to set up the FVP VM:
$ shrinkwrap build --overlay=arch/v9.4.yaml ns-edk2.yaml
My rootfs is Ubuntu 22.04.3. In case it's useful, my kernel config is here:
https://people.linaro.org/~thiago.bauermann/gcs/config-v6.8.0-rc2
I tried removing "maxcpus=1" from the kernel command line, but it made no difference.
I also tried resetting my Shrinkwrap setup and starting from scratch, but it also made no difference: I just pulled from the current main branch and removed Shrinkwrap's build and package directories, and also removed all Docker images and the one container I had.
Here are some firmware versions from early boot:
NOTICE: Booting Trusted Firmware NOTICE: BL1: v2.10.0 (release):v2.10.0 NOTICE: BL1: Built : 00:07:29, Feb 23 2024 ⋮ NOTICE: BL2: v2.10.0 (release):v2.10.0 NOTICE: BL2: Built : 00:07:29, Feb 23 2024 ⋮ NOTICE: BL31: v2.10.0 (release):v2.10.0 NOTICE: BL31: Built : 00:07:29, Feb 23 2024 ⋮ [ edk2 ] UEFI firmware (version built at 00:06:55 on Feb 23 2024) Press ESCAPE for boot options ...........UEFI Interactive Shell v2.2 EDK II UEFI v2.70 (EDK II, 0x00010000)
It looks like our main differences are the kernel config and the distro.