| From: | BharatDB <bharatdbpg(at)gmail(dot)com> |
|---|---|
| To: | torsten(dot)rupp(at)gmx(dot)net, pgsql-bugs(at)lists(dot)postgresql(dot)org, michael(at)paquier(dot)xyz |
| Cc: | VASUKI M <vasukim1992002(at)gmail(dot)com> |
| Subject: | Re: BUG #19095: Test if function exit() is used fail when linked static |
| Date: | 2025-11-12 05:53:10 |
| Message-ID: | CAAh00ETwx8_AEM0wgoi-v875uC-FLuGGOMTaP9fCNdVw4Zq=Vg@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-bugs pgsql-hackers |
>
>
> Hello Hackers,
>
> While reproducing a static linking issue between libpq and libcrypto.a,
> I observed that the Makefile's symbol check incorrectly reports missing
> exit() symbols because 'grep exit' also matches 'atexit' and
> 'OPENSSL_atexit', etc.
>
> As discussed in the thread by Michael Paquier
> (https://www.postgresql.org/message-id/aQA1obboZFjqjaBI%40paquier.xyz)
> it seems a related fix was committed earlier. However, I was able to
> reproduce this issue again using PostgreSQL 18 (latest release).
>
> Steps to reproduce:
> nm -A -u ./src/interfaces/libpq/libpq.a
> /usr/lib/x86_64-linux-gnu/libcrypto.a 2>/dev/null | grep -v __cxa_atexit |
> grep exit
>
> Output:
> /usr/lib/x86_64-linux-gnu/libcrypto.a:libcrypto-lib-init.o:
> U atexit
> /usr/lib/x86_64-linux-gnu/libcrypto.a:libdefault-lib-rand_unix.o:
> U OPENSSL_atexit
>
> This falsely triggers an undefined exit() error.
> [1]Changing the grep pattern to match the exact symbol ('grep -x exit')
> prevents
> such false positives.
[2]Alternatively, excluding pthread_exit() (similar to
> __cxa_atexit) would also avoid the issue.
>
> But [1] will handle all the false positives instead of just pthread_exit
.LGTM
Expected (after fix):
> no output — no false positives.
>
> Patch attached.I would love to hear any suggestions from the committers.
>
Thanks in advance
>
> Best regards,
> Vasuki M
>
BharatDB,
> CDAC Chennai.
>
| Attachment | Content-Type | Size |
|---|---|---|
| 0001-Fix-prevent-false-exit-match-in-libpq-static-link-ch.patch | text/x-patch | 1.2 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | BharatDB | 2025-11-12 05:54:31 | Fwd: BUG #19095: Test if function exit() is used fail when linked static |
| Previous Message | mike | 2025-11-11 22:46:28 | Re: RLS creates inaccurate limit and offset results |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | BharatDB | 2025-11-12 05:54:31 | Fwd: BUG #19095: Test if function exit() is used fail when linked static |
| Previous Message | Tom Lane | 2025-11-12 05:22:06 | Re: [PATCH] Fix translation consistency issues in Korean, Chinese Traditional, and Tamil |