qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gitlab-ci: Use -fno-sanitize=function in the clang-user job


From: Richard Henderson
Subject: Re: [PATCH] gitlab-ci: Use -fno-sanitize=function in the clang-user job
Date: Thu, 25 Jul 2024 08:03:32 +1000
User-agent: Mozilla Thunderbird

On 7/24/24 20:52, Daniel P. Berrangé wrote:
On Wed, Jul 24, 2024 at 09:25:42AM +1000, Richard Henderson wrote:
With -fsanitize=undefined, which implies -fsanitize=function,
clang will add a "type signature" before functions.
It accesses funcptr-8 and funcptr-4 to do so.

The generated TCG prologue is directly on a page boundary,
so these accesses segfault.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---

Does anyone know why we're using --extra-cflags for the clang-user
and clang-system jobs, as opposed to --enable-sanitizers?  It
certainly seems like regular users who use the normal configure
flag are going to run into this as well.

Anyway, this is why the clang-user job is failing at the momemnt.
I can only assume that changes to our docker file, or upstream
distro updates have pulled in a new compiler version, because this
wasn't failing in this way last week.

Logs show the clang version didn't change, but it is possible the
libubsan.so package changed, but we can't see package versions.

But the code generation definitely did -- the segv is right at the indirect function call to the (generated) tcg prologue. The library is not involved at all.


I've sent a series that will make it easier to compare pacakge
versions between new & historical jobs in future situations like
this:

   https://lists.nongnu.org/archive/html/qemu-devel/2024-07/msg05749.html

Nice.


r~



reply via email to

[Prev in Thread] Current Thread [Next in Thread]