Hi,

On 2026-02-23 19:55, Emanuele Rocca wrote:
> Source: sombok
> Version: 2.4.0-2
> Severity: important
> Tags: ftbfs upstream
> Justification: fails to build from source
> User: [email protected]
> Usertags: glibc-2.43
> 
> Hi,
> 
> sombok fails to build from source on arm64 when using glibc 2.43,
> currently in experimental.
> 
> The issue is triggered by glibc 2.43 on arm64 enabling 2MB THP by
> default:
> https://sourceware.org/git/?p=glibc.git;a=commit;h=321e1fc73f53081d92ba357cdd48c56b79292020
> 
> The problem is however not architecture-specific. For example it can be
> reproduced with glibc 2.42 on amd64 by building the package with the
> GLIBC_TUNABLES environment variable set to glibc.malloc.hugetlb=2.
> 
> Successful build with glibc 2.42, currently in sid:
> https://people.debian.org/~ema/glibc-2.43-rebuilds/output-2/sombok_arm64.build
> 
> Logs of a failed build with glibc 2.43 are here:
> https://people.debian.org/~ema/glibc-2.43-rebuilds/output-1/sombok_arm64.build
> 
> Salient part:
> 
> FAIL: tests/01break.t
> FAIL: tests/02hangul.t
> FAIL: tests/03ns.t
> FAIL: tests/05urgent.t
> FAIL: tests/06context.t
> FAIL: tests/07sea.t
> FAIL: tests/09uri.t
> FAIL: tests/11format.t
> [...]
> FAIL: tests/01break.t
> =====================
> 
> linebreak_break_partial: Cannot allocate memory
> linebreak_break_partial: Cannot allocate memory
> [...]

I found that the issue is that linebreak_southeastasian_flagbreak() can 
change errno when calling th_wbrk() in libthai, which in turns call 
malloc(). Then _break_partial() checks for errno just after that call to 
linebreak_southeastasian_flagbreak(). It is not clear to me if it is 
correct as the libthai source code doesn't mention setting errno.

Regards
Aurelien

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
[email protected]                     http://aurel32.net

Reply via email to