Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Wed, 26 Feb 2020 10:56:24 +0100
From: Szabolcs Nagy <nsz@...t70.net>
To: Tobias Koch <tobias.koch@...terra.com>
Cc: musl@...ts.openwall.com
Subject: Re: Crash on (qemu'ed) s390x doing prlimit call after probing
 stack size

* Tobias Koch <tobias.koch@...terra.com> [2020-02-26 01:07:58 +0300]:
> I have some programs crashing on me under QEMU s390x user emulation. I see
> them probe the stack size using mremaps and then do a prlimit as in this
> snippet
> 
> 24948 mremap(274877911040,4096,8192,0,0,56) = -1 errno=12 (Cannot allocate
> memory)
> 24948 mremap(274877906944,4096,8192,0,0,56) = -1 errno=12 (Cannot allocate
> memory)
> 24948 mremap(274877902848,4096,8192,0,0,56) = -1 errno=14 (Bad address)
> 24948 prlimit64(0,3,0,274889373840,274879934536,56) = 0
> --- SIGSEGV {si_signo=SIGSEGV, si_code=1, si_addr=0x0000004000001000} ---
> Segmentation fault

i'd use

qemu-s390x -d page -strace exe

to see how 0x0000004000001000 is mapped and then

qemu-s390x -d page,in_asm,cpu,nochain -strace exe

to see the exact failing instruction, that may give a hint.

> 
> The same programs on other 64bit arches (such as aarch64 or powerpc64le)
> emluated with QEMU work OK. I'm trying to understand, what musl is doing
> here and why QEMU cannot handle it.Any pointers would be appreciated.
> 
> Tobias

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.