On Mon Jun 27 16:15:49 2022 +0000, Jinoh Kang wrote:
When running under qemu-user CPU emulation, this can mean we not only
remove the vdso from the process being launched (a performance degradation), but also clobber it out from under the qemu-user emulator hosting the wine-preloader process - which is in fact in the midst of a call to mmap that is *using* the vdso, so the emulator then segfaults before returning I'd call a QEMU bug.
I agree at least in that it probably at least refuse the a MAP_FIXED mmap that would overwrite things the JIT is using. An error message is better than a crash, after all. But changing from a strategy where wine wants to clobber it to one where wine just wants to move it might give qemu-user some better options. I haven't put enough thought into it yet to have a specific idea, just that this PR seemed like it would be helpful.