On 25 Dec 2024, at 03:04, Chen Qi via lists.openembedded.org 
<[email protected]> wrote:
> When 64K page size is enabled, for 32bit multilib, we'll need to build
> applications with 64K alignment, otherwise, we'll see errors like below at 
> runtime:
> 
>  root@marvell-cn10xxx:~# /lib/ld-linux-armhf.so.3
>    Segmentation fault
> 
> marvell-cn10xxx in yocto-kernel-cache enables CONFIG_ARM64_4K_PAGES=y by 
> default.
> And the issue was first discovered there.

Do you mean _64K_PAGES?  Where is this marvell-cn100xxx?  In yocto-kernel-cache 
there are no users of arm64-64kb-pages and nothing called cn10xxx.  Is this a 
Wind River-specific fork of yocto-kernel-cache?

> However, there's a kernel config fragment in yocto-kernel-cache which enableds
> 64K page size for arm64: arch/arm/arm64-64kb-pages.scc. So it's easy for other
> arm64 BSPs to enable this. And when they do so, they'll have problem with
> multilib. This patch adds a config file to help people a little bit in such
> situation.
> 
> The max-page-size option is used to fix this issue. This option is added
> to both CFLAGS and LDFLAGS for the purpose of covering as many recipes as
> possible.

First, I should point out that changing the page size is an ABI break, and the 
32-bit ABI was formalised long before 64kb pages were a thing, so things _will_ 
break.  That said the loader should work, as a decade ago binutils 2.25 changed 
the alignment to 64kb pages by default:

https://sourceware.org/git/?p=binutils-gdb.git;a=blobdiff;f=ld/emulparams/armelf_linux.sh;h=280db842208e06e3231ec3a8322369193630a07d;hp=35891f1fc91bddd03677aaefd7146ae5333e6cf0;hb=7572ca8989ead4c3425a1500bc241eaaeffa2c89;hpb=8335d6aa34b88ce31b62e1b578d54ab4aa364435

That won’t help specific pieces of software that eg assume the page size is a 
built-time constant (and use the wrong constant), but helloworld should be 
good.  Can you replicate with pristine poky master and a minimal configuration 
in a qemu?

Ross
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#209585): 
https://lists.openembedded.org/g/openembedded-core/message/209585
Mute This Topic: https://lists.openembedded.org/mt/110280373/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to