Re: Fix some ubsan/asan related issues - Mailing list pgsql-hackers

From Tristan Partin
Subject Re: Fix some ubsan/asan related issues
Date
Msg-id D4L0S4PO90TR.22FHV12UROKX1@partin.io
Whole thread Raw
In response to Re: Fix some ubsan/asan related issues  (Junwang Zhao <zhjwpku@gmail.com>)
List pgsql-hackers
On Mon Sep 16, 2024 at 9:29 AM EDT, Junwang Zhao wrote:
> I tried your v1-0002, it works at compile phase but failed to run initdb
> with the following leak detected:
>
> =================================================================
> ==64983==ERROR: LeakSanitizer: detected memory leaks
>
> Direct leak of 248 byte(s) in 1 object(s) allocated from:
>     #0 0x7fc7729df9cf in __interceptor_malloc
> ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:69
>     #1 0x55bff5480e8b in save_ps_display_args
> ../postgres/src/backend/utils/misc/ps_status.c:190
>     #2 0x55bff4a5a298 in main ../postgres/src/backend/main/main.c:90
>     #3 0x7fc771924249 in __libc_start_call_main
> ../sysdeps/nptl/libc_start_call_main.h:58
>
> Indirect leak of 19 byte(s) in 1 object(s) allocated from:
>     #0 0x7fc77299777b in __interceptor_strdup
> ../../../../src/libsanitizer/asan/asan_interceptors.cpp:439
>     #1 0x55bff5480f41 in save_ps_display_args
> ../postgres/src/backend/utils/misc/ps_status.c:198
>     #2 0x55bff4a5a298 in main ../postgres/src/backend/main/main.c:90
>     #3 0x7fc771924249 in __libc_start_call_main
> ../sysdeps/nptl/libc_start_call_main.h:58
>
> I worked around by moving *new_environ* as a global variable, I think this is
> false positive report so maybe this deserves a patch?
>
> I tried to apply your v2 patch set but v2-0004 seems out of date.

Thanks for giving it a try Junwang. I'll rebase this, hopefully tomorrow
and give it another push.

--
Tristan Partin
Neon (https://neon.tech)



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: pg_trgm comparison bug on cross-architecture replication due to different char implementation
Next
From: "Tristan Partin"
Date:
Subject: Re: Converting README documentation to Markdown