Enable PIE/POE Cause Linux fail to boot

Hi Arm Community,

I'm trying PIE/POE feature provided by v8.9, and I notice Linux becomes compatible with this feature since v6.5. Thus I use scripts provided here to setup the environment. However, when I enable PIE feature, the boot seems to get stuck. This is my fvp settings:

    -C pctl.startup= \
    -C bp.secure_memory=0 \
    -C cluster0.NUM_CORES=2 \
    -C cluster1.NUM_CORES=0 \
    -C cluster0.has_permission_indirection_s1=2 \
    -C cluster0.has_permission_indirection_s2=2 \
    -C cluster0.has_permission_overlay_s1=2 \
    -C cluster0.has_permission_overlay_s2=2 \
    -C cache_state_modelled=0 \
    -C bp.pl011_uart0.untimed_fifos=1 \
    -C bp.pl011_uart0.unbuffered_output=1 \
    -C bp.pl011_uart0.out_file="${WORKSPACE}/aemfvp-a/uart0.log" \
    -C bp.pl011_uart1.out_file="${WORKSPACE}/aemfvp-a/uart1.log" \
    -C bp.secureflashloader.fname="${WORKSPACE}/output/aemfvp-a/aemfvp-a/tf-bl1.bin" \
    -C bp.flashloader0.fname="${WORKSPACE}/output/aemfvp-a/aemfvp-a/fip-uboot.bin" \
    -C cluster0.cpu0.semihosting-cwd="${WORKSPACE}/output/aemfvp-a/aemfvp-a/" \
    -C bp.ve_sysregs.mmbSiteDefault=0 \
    -C bp.ve_sysregs.exit_on_shutdown=1 \
    -C bp.virtioblockdevice.image_path="${WORKSPACE}/output/aemfvp-a/components/aemfvp-a/grub-busybox.img" \

And I got this output:

But once I remove "-C cluster0.has_permission_indirection_s1=2 -C cluster0.has_permission_indirection_s2=2 -C cluster0.has_permission_overlay_s1=2 -C cluster0.has_permission_overlay_s2=2" to disable PIE/POE, then everything is OK, kernel can boot successfully.

How can I solve it? Or anyone successfully run Linux with PIE enabled can share some setup configurations or steps?

Parents Reply Children
No data