[Bug 59898] New: Wine on aarch64 fails on linux with CONFIG_ARM64_VA_BITS=39
http://bugs.winehq.org/show_bug.cgi?id=59898 Bug ID: 59898 Summary: Wine on aarch64 fails on linux with CONFIG_ARM64_VA_BITS=39 Product: Wine Version: 8.11 Hardware: aarch64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: loader Assignee: wine-bugs@list.winehq.org Reporter: martin@martin.st CC: julliard@winehq.org Regression SHA1: ac1761d1dae8bf114a05e28ed6886deba6c2c860 Distribution: --- Since commit ac1761d1dae8bf114a05e28ed6886deba6c2c860, "loader: Build the preloader as PIE on 64-bit.", Wine on aarch64 fails on linux kernels that are configured with CONFIG_ARM64_VA_BITS=39. In my case, old and small SBCs have kernels built with CONFIG_ARM64_VA_BITS=39 (or CONFIG_ARM64_VA_BITS_39=y, which then sets CONFIG_ARM64_VA_BITS to that value). From https://github.com/raspberrypi/linux/blob/rpi-6.18.y/arch/arm64/configs/bcm2..., it seems like even very recent configurations for raspberry pi 4 have this set, while kernels for raspberry pi 5 are configured with more virtual address bits. Before ac1761d1dae8bf114a05e28ed6886deba6c2c860, WINEPRELOADER_LDFLAGS contained "-Wl,-Ttext=0x7d400000". After that commit, if the "-static-pie" option isn't supported, WINEPRELOADER_LDFLAGS ends up containing "-Wl,-Ttext=0x7d7d00000000" instead. I.e. - previously, we set the text section address of 0x7d400000, while we now set 0x7d7d00000000. The former is a 31 bit address, while the latter is a 47 bit address. Kernels with CONFIG_ARM64_VA_BITS_39=y just immediately segfault if they try to execute a binary linked with -Ttext=0x7d7d00000000. Any virtual address with 39 bits or fewer works, while higher addresses won't work. Reversing the change, setting -Wl,-Ttext=0x7d400000, makes the binaries work fine (in brief testing) on such aarch64 linux devices. I'm not sure if there's any immediate drawbacks to it - but I guess it would be nice to set an address with less than 39 bits, at least for aarch64. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59898 Ken Sharp <imwellcushtymelike@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |critical Keywords| |download, regression, | |source --- Comment #1 from Ken Sharp <imwellcushtymelike@gmail.com> --- Did you test this on latest git? -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59898 --- Comment #2 from Martin Storsjö <martin@martin.st> --- Yes, the same thing goes for any version of Wine down to git commit ac1761d1dae8bf114a05e28ed6886deba6c2c860. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
participants (1)
-
WineHQ Bugzilla