Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Running into file descriptor limits when linking against static musl in a container #22564

Closed
btertoolen opened this issue Jan 21, 2025 · 4 comments
Milestone

Comments

@btertoolen
Copy link

btertoolen commented Jan 21, 2025

Zig Version

0.13.0

Steps to Reproduce and Observed Behavior

Hi,

I am not sure if this is an actual issue or I'm just running into system constraints. But I found a ticket with exactly this issue for an older version of zig, and it managed to get fixed so I'm opening this issue just in case: #2280.

I am using Ubuntu 24.04 (in WSL).

I am trying to build my project using podman build, but the compilation of my first dependency fails with the following result:

STEP 13/20: RUN ulimit -n
1024
--> b7e61a657664
STEP 14/21: RUN ulimit -a
time(seconds)        unlimited
file(blocks)         unlimited
data(kbytes)         unlimited
stack(kbytes)        8192
coredump(blocks)     0
memory(kbytes)       unlimited
locked memory(kbytes) 65536
process              61262
nofiles              1024
vmemory(kbytes)      unlimited
locks                unlimited
rtprio               0
SETP 15/20: RUN conan install ...
...

-------- Installing package bzip2/1.0.8 (1 of 49) --------
bzip2/1.0.8: Building from source
...
bzip2/1.0.8: Calling build()
bzip2/1.0.8: Running CMake.configure()
bzip2/1.0.8: RUN: cmake -G "Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE="generators/conan_toolchain.cmake" -DCMAKE_INSTALL_PREFIX="/root/.conan2/p/b/bzip24cf66a6644d99/p" -DCMAKE_POLICY_DEFAULT_CMP0091="NEW" -DCMAKE_BUILD_TYPE="Release" "/root/.conan2/p/b/bzip24cf66a6644d99/b/src/.."
-- Using Conan toolchain: /root/.conan2/p/b/bzip24cf66a6644d99/b/build/Release/generators/conan_toolchain.cmake
-- Conan toolchain: Setting CMAKE_POSITION_INDEPENDENT_CODE=ON (options.fPIC)
-- Conan toolchain: Defining architecture flag: -m64
-- Conan toolchain: Setting BUILD_SHARED_LIBS = OFF
-- The C compiler identification is Clang 18.1.6
-- Check for working C compiler: /usr/bin/zigcc-musl
-- Check for working C compiler: /usr/bin/zigcc-musl -- broken
CMake Error at /usr/share/cmake-3.16/Modules/CMakeTestCCompiler.cmake:60 (message):
  The C compiler

    "/usr/bin/zigcc-musl"

  is not able to compile a simple test program.

  It fails with the following output:

    Change Dir: /root/.conan2/p/b/bzip24cf66a6644d99/b/build/Release/CMakeFiles/CMakeTmp

    Run Build Command(s):/usr/bin/make cmTC_df425/fast && /usr/bin/make -f CMakeFiles/cmTC_df425.dir/build.make CMakeFiles/cmTC_df425.dir/build
    make[1]: Entering directory '/root/.conan2/p/b/bzip24cf66a6644d99/b/build/Release/CMakeFiles/CMakeTmp'
    Building C object CMakeFiles/cmTC_df425.dir/testCCompiler.c.o
    /usr/bin/zigcc-musl   -m64  -fPIE   -o CMakeFiles/cmTC_df425.dir/testCCompiler.c.o   -c /root/.conan2/p/b/bzip24cf66a6644d99/b/build/Release/CMakeFiles/CMakeTmp/testCCompiler.c
    Linking C executable cmTC_df425
    /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_df425.dir/link.txt --verbose=1
    /usr/bin/zigcc-musl -m64   -m64  CMakeFiles/cmTC_df425.dir/testCCompiler.c.o  -o cmTC_df425
    warning(compilation): failed to delete '/root/.cache/zig/tmp/3063bac7c62c571e-coshf.o.d': FileNotFound
    warning(compilation): failed to delete '/root/.cache/zig/tmp/f7cb7405130c1536-expf.o.d':
FileNotFound
    warning(compilation): failed to delete '/root/.cache/zig/tmp/16d65175497a340-cosh.o.d': FileNotFound
    warning(compilation): failed to delete '/root/.cache/zig/tmp/4642c88fafeed8fb-atanhf.o.d': FileNotFound
    warning(compilation): failed to delete '/root/.cache/zig/tmp/d1751d8a6c53abba-__tanl.o.d': FileNotFound
    warning(compilation): failed to delete '/root/.cache/zig/tmp/ba0646dec92fdacc-__math_divzerof.o.d': FileNotFound
    warning(compilation): failed to delete '/root/.cache/zig/tmp/daf699a53401acde-uselocale.o.d': FileNotFound
    warning(compilation): failed to delete '/root/.cache/zig/tmp/5629cf7d6771df5d-settimeofday.o.d': FileNotFound
    error: sub-compilation of musl libc.a failed
        /usr/lib/libc/musl/src/math/erfl.c:1:1: note: CacheUnavailable
        /usr/lib/libc/musl/src/math/cos.c:1:1: note: ProcessFdQuotaExceeded
        /usr/lib/libc/musl/src/math/coshf.c:1:1: note: unable to spawn /usr/bin/zig: ProcessFdQuotaExceeded
        /usr/lib/libc/musl/src/math/copysignf.c:1:1: note: ProcessFdQuotaExceeded
        /usr/lib/libc/musl/src/math/expf.c:1:1: note: unable to spawn /usr/bin/zig: ProcessFdQuotaExceeded
        /usr/lib/libc/musl/src/math/copysignl.c:1:1: note: ProcessFdQuotaExceeded
        /usr/lib/libc/musl/src/math/cbrtf.c:1:1: note: ProcessFdQuotaExceeded
        /usr/lib/libc/musl/src/math/cosh.c:1:1: note: unable to spawn /usr/bin/zig: ProcessFdQuotaExceeded
        /usr/lib/libc/musl/src/math/cbrtl.c:1:1: note: ProcessFdQuotaExceeded
        /usr/lib/libc/musl/src/math/ceil.c:1:1: note: ProcessFdQuotaExceeded
        /usr/lib/libc/musl/src/math/atanh.c:1:1: note: ProcessFdQuotaExceeded

"/usr/bin/zigcc-musl" is just a wrapper script which basically contains /usr/bin/zig c++ -lc --target=x86_64-linux-musl "$@"

Now if I increase the file descriptor limits by adding the following argument to my podman build command, the build is succcesfull: --ulimit=nofile=10000:10000. I never ran into this issue outside of a containerized environment. On my host running ulimit -n also returns 1024, so I'm not sure what the difference is. The only thing I can think of is that on my host I compiled a small test program when trying to link against musl for the first time, and in this containerized build I compile a larger project in the first run.

I also came across this old issue #9986 that seems related. For now I can work around this so for me it is not a big issue. But I am running a pretty standard setup, so I think more people might run into this in the future so I'm adding this issue just in case.

Full build log ``` -------- Installing package bzip2/1.0.8 (1 of 49) -------- bzip2/1.0.8: Building from source bzip2/1.0.8: Package bzip2/1.0.8:a635db80a1ca70aecc51854261a0251ad9a3c495 bzip2/1.0.8: Copying sources to build folder bzip2/1.0.8: Building your package in /root/.conan2/p/b/bzip232f3619bbc57a/b bzip2/1.0.8: Calling generate() bzip2/1.0.8: Generators folder: /root/.conan2/p/b/bzip232f3619bbc57a/b/build/Release/generators bzip2/1.0.8: CMakeToolchain generated: conan_toolchain.cmake bzip2/1.0.8: CMakeToolchain generated: /root/.conan2/p/b/bzip232f3619bbc57a/b/build/Release/generators/CMakePresets.json bzip2/1.0.8: Generating aggregated env files bzip2/1.0.8: Generated aggregated env files: ['conanbuild.sh', 'conanrun.sh'] bzip2/1.0.8: Calling build() bzip2/1.0.8: Running CMake.configure() bzip2/1.0.8: RUN: cmake -G "Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE="generators/conan_toolchain.cmake" -DCMAKE_INSTALL_PREFIX="/root/.conan2/p/b/bzip232f3619bbc57a/p" -DCMAKE_POLICY_DEFAULT_CMP0091="NEW" -DCMAKE_BUILD_TYPE="Release" "/root/.conan2/p/b/bzip232f3619bbc57a/b/src/.." -- Using Conan toolchain: /root/.conan2/p/b/bzip232f3619bbc57a/b/build/Release/generators/conan_toolchain.cmake -- Conan toolchain: Setting CMAKE_POSITION_INDEPENDENT_CODE=ON (options.fPIC) -- Conan toolchain: Defining architecture flag: -m64 -- Conan toolchain: Setting BUILD_SHARED_LIBS = OFF -- The C compiler identification is Clang 18.1.6 -- Check for working C compiler: /usr/bin/zigcc-musl -- Check for working C compiler: /usr/bin/zigcc-musl -- broken CMake Error at /usr/share/cmake-3.16/Modules/CMakeTestCCompiler.cmake:60 (message): The C compiler
"/usr/bin/zigcc-musl"

is not able to compile a simple test program.

It fails with the following output:

Change Dir: /root/.conan2/p/b/bzip232f3619bbc57a/b/build/Release/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/make cmTC_28a4a/fast && /usr/bin/make -f CMakeFiles/cmTC_28a4a.dir/build.make CMakeFiles/cmTC_28a4a.dir/build
make[1]: Entering directory '/root/.conan2/p/b/bzip232f3619bbc57a/b/build/Release/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_28a4a.dir/testCCompiler.c.o
/usr/bin/zigcc-musl   -m64  -fPIE   -o CMakeFiles/cmTC_28a4a.dir/testCCompiler.c.o   -c /root/.conan2/p/b/bzip232f3619bbc57a/b/build/Release/CMakeFiles/CMakeTmp/testCCompiler.c
Linking C executable cmTC_28a4a
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_28a4a.dir/link.txt --verbose=1
/usr/bin/zigcc-musl -m64   -m64  CMakeFiles/cmTC_28a4a.dir/testCCompiler.c.o  -o cmTC_28a4a
warning(compilation): failed to delete '/root/.cache/zig/tmp/96eee2412505a937-cosf.o.d':

FileNotFound
warning(compilation): failed to delete '/root/.cache/zig/tmp/6dee62610492422e-coshf.o.d': FileNotFound
warning(compilation): failed to delete '/root/.cache/zig/tmp/a9fa3bb6ad19aeac-cosh.o.d':
FileNotFound
warning(compilation): failed to delete '/root/.cache/zig/tmp/3cd53fecd9be010b-acosh.o.d': FileNotFound
error: sub-compilation of musl libc.a failed
/usr/lib/libc/musl/src/math/copysign.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/cosl.c:1:1: note: CacheUnavailable
/usr/lib/libc/musl/src/math/copysignf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/ceil.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/coshl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/cbrtf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/copysignl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/atanh.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/cbrtl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/cosf.c:1:1: note: unable to spawn /usr/bin/zig: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/atanf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/atanhf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/cbrt.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/ceilf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/cosh.c:1:1: note: unable to spawn /usr/bin/zig: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/coshf.c:1:1: note: unable to spawn /usr/bin/zig: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/asinhl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/atan2f.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/asinf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/atanhl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/atan2.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/atan.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/acos.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/asinh.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/acoshf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/acoshl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__sin.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__signbitl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__sinl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__signbitf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__signbit.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__tandf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__tan.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__tanl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__sindf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__math_xflowf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__math_xflow.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__math_uflowf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__math_uflow.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__rem_pio2l.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/asin.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/acosf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__math_invalidl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__math_oflowf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__math_invalid.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__math_divzerof.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__math_oflow.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__rem_pio2_large.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__rem_pio2.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__fpclassifyl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/acosh.c:1:1: note: unable to spawn /usr/bin/zig: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__math_divzero.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__polevll.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__fpclassifyf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__expo2.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__rem_pio2f.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/malloc/realloc.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__cos.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__math_invalidf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/malloc/posix_memalign.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__expo2f.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/malloc/oldmalloc/malloc.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/malloc/replaced.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/malloc/reallocarray.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/malloc/oldmalloc/malloc_usable_size.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/malloc/oldmalloc/aligned_alloc.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__cosdf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/malloc/memalign.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/malloc/mallocng/donate.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/malloc/mallocng/malloc.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/malloc/mallocng/aligned_alloc.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/malloc/lite_malloc.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/malloc/mallocng/realloc.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/math/__cosl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/malloc/libc_calloc.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/malloc/free.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/uselocale.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/malloc/mallocng/malloc_usable_size.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/strxfrm.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/strtod_l.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/textdomain.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/wcsxfrm.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/newlocale.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/wcscoll.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/strfmon.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/pleval.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/strcoll.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/setlocale.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/locale_map.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/langinfo.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/iconv_close.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/localeconv.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/dcngettext.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/catopen.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/duplocale.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/malloc/mallocng/free.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/catgets.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/__mo_lookup.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/c_locale.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/iconv.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/freelocale.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/malloc/calloc.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/__lctrans.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/xattr.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/vhangup.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/wait3.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/unshare.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/wait4.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/utimes.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/timerfd.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/vmsplice.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/tee.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/bind_textdomain_codeset.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/sysinfo.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/swap.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/splice.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/sync_file_range.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/locale/catclose.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/syncfs.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/stime.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/statx.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/setns.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/settimeofday.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/setfsuid.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/setfsgid.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/sendfile.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/signalfd.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/reboot.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/readahead.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/sbrk.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/remap_file_pages.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/quotactl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/pwritev2.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/process_vm.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/ptrace.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/setgroups.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/personality.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/prlimit.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/sethostname.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/preadv2.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/prctl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/mount.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/module.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/mlock2.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/memfd_create.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/open_by_handle_at.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/name_to_handle_at.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/klogctl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/ioperm.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/membarrier.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/inotify.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/gettid.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/getrandom.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/eventfd.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/fallocate.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/fanotify.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/epoll.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/getdents.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/iopl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/clock_adjtime.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/flock.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/copy_file_range.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/pivot_root.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/cache.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/cap.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/adjtimex.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/clone.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/chroot.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/legacy/valloc.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/legacy/utmpx.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/brk.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/legacy/ulimit.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/arch_prctl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/linux/adjtime.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/legacy/getloadavg.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/legacy/getusershell.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/legacy/getdtablesize.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/legacy/getpass.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/legacy/isastream.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/legacy/ftw.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/legacy/euidaccess.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/legacy/getpagesize.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/legacy/futimes.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/legacy/cuserid.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ldso/dlopen.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/legacy/err.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ldso/dlinfo.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/legacy/daemon.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ldso/__dlsym.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ipc/shmget.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ldso/x86_64/tlsdesc.s:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/legacy/lutimes.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ipc/shmctl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ipc/shmdt.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ipc/semget.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ipc/semtimedop.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ipc/shmat.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ipc/semop.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ldso/dl_iterate_phdr.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ldso/x86_64/dlsym.s:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ipc/msgget.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ipc/msgsnd.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/internal/version.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ipc/msgrcv.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/internal/syscall_ret.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ipc/ftok.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/internal/libc.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/internal/procfdname.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ipc/msgctl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/internal/vdso.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/internal/intscan.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/internal/emulate_wait4.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/fcntl/posix_fallocate.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/fenv/fegetexceptflag.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/internal/shgetc.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/internal/floatscan.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/fcntl/openat.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ipc/semctl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/fenv/__flt_rounds.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/fcntl/open.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/internal/defsysinfo.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/exit/exit.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/exit/atexit.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/exit/abort_lock.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/exit/assert.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/fcntl/posix_fadvise.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/exit/at_quick_exit.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/fcntl/fcntl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/exit/_Exit.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/exit/abort.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/errno/strerror.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/env/unsetenv.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/fcntl/creat.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/env/setenv.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/env/putenv.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/errno/__errno_location.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/exit/quick_exit.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/env/__libc_start_main.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/env/clearenv.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/env/__reset_tls.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/env/secure_getenv.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/env/__init_tls.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/env/__stack_chk_fail.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/env/getenv.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/dirent/versionsort.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/dirent/scandir.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/dirent/rewinddir.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/dirent/telldir.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/env/__environ.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/dirent/readdir.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/dirent/dirfd.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/dirent/closedir.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/dirent/fdopendir.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/dirent/seekdir.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/dirent/opendir.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/dirent/readdir_r.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/wcswidth.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/toupper.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/tolower.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/dirent/alphasort.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/toascii.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/wctrans.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/wcwidth.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/towctrans.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/iswprint.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/iswlower.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/iswupper.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/isxdigit.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/iswpunct.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/iswxdigit.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/iswdigit.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/iswctype.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/iswblank.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/iswalpha.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/iswalnum.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/ispunct.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/isprint.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/isupper.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/isdigit.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/iswcntrl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/iscntrl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/isspace.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/islower.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/iswspace.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/isgraph.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/isalpha.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/isblank.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/isascii.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/isalnum.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/__ctype_b_loc.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/__ctype_tolower_loc.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/crypt/crypt_sha512.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/iswgraph.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/crypt/crypt_sha256.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/crypt/crypt_r.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/crypt/encrypt.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/crypt/crypt_des.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/crypt/crypt_md5.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/crypt/crypt_blowfish.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/__ctype_toupper_loc.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/ctype/__ctype_get_mb_cur_max.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/conf/legacy.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/conf/pathconf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/crypt/crypt.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/conf/confstr.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/ctanl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/ctanhf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/ctanh.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/conf/fpathconf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/csqrt.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/ctan.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/csqrtl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/ctanhl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/ctanf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/csinhf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/csinh.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/csqrtf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/csinf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/csinl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/creall.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/crealf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/conf/sysconf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/cproj.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/cpowf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/cpowl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/cpow.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/cprojl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/creal.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/conjf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/cprojf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/csinhl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/clogl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/conjl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/cimag.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/csin.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/cexpl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/cexpf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/ccosl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/clogf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/cexp.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/cimagl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/ccoshf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/ccosf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/ccosh.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/clog.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/ccos.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/catanh.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/ccoshl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/catan.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/catanhl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/catanhf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/casinl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/catanl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/casinhl.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/catanf.c:1:1: note: ProcessFdQuotaExceeded
/usr/lib/libc/musl/src/complex/casinhf.c:1:1: note: ProcessFdQuotaExceeded
error: unable to build musl CRT file: SubCompilationFailed
make[1]: *** [CMakeFiles/cmTC_28a4a.dir/build.make:87: cmTC_28a4a] Error 1
make[1]: Leaving directory '/root/.conan2/p/b/bzip232f3619bbc57a/b/build/Release/CMakeFiles/CMakeTmp'
make: *** [Makefile:121: cmTC_28a4a/fast] Error 2

CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
CMakeLists.txt:2 (project)

-- Configuring incomplete, errors occurred!
See also "/root/.conan2/p/b/bzip232f3619bbc57a/b/build/Release/CMakeFiles/CMakeOutput.log".
See also "/root/.conan2/p/b/bzip232f3619bbc57a/b/build/Release/CMakeFiles/CMakeError.log".

bzip2/1.0.8: ERROR:
Package 'a635db80a1ca70aecc51854261a0251ad9a3c495' build failed
bzip2/1.0.8: WARN: Build folder /root/.conan2/p/b/bzip232f3619bbc57a/b/build/Release
ERROR: bzip2/1.0.8: Error in build() method, line 63
cmake.configure(build_script_folder=os.path.join(self.source_folder, os.pardir))
ConanException: Error 1 while executing

</details>

### Expected Behavior

I would expect the build to succeed without having to modify any system defaults.
@btertoolen btertoolen added the bug Observed behavior contradicts documented or intended behavior label Jan 21, 2025
@rudy-in
Copy link

rudy-in commented Jan 21, 2025

is it fixed with v0.14?

@btertoolen
Copy link
Author

is it fixed with v0.14?

Unfortunately no, the error message is slightly different but it seems the issue still persists (I used the latest download of today (https://ziglang.org/builds/zig-linux-x86_64-0.14.0-dev.2851+b074fb7dd.tar.xz):

  The C++ compiler

    "/usr/bin/zigcpp-musl"

  is not able to compile a simple test program.

  It fails with the following output:

    Change Dir: '/root/.conan2/p/b/itk2e4a8ffa0cc64/b/build/Release/CMakeFiles/CMakeScratch/TryCompile-URVNGo'

    Run Build Command(s): /root/.conan2/p/cmakee1219ba8516b0/p/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_4e496/fast
    /usr/bin/make  -f CMakeFiles/cmTC_4e496.dir/build.make CMakeFiles/cmTC_4e496.dir/build
    make[1]: Entering directory '/root/.conan2/p/b/itk2e4a8ffa0cc64/b/build/Release/CMakeFiles/CMakeScratch/TryCompile-URVNGo'
    Building CXX object CMakeFiles/cmTC_4e496.dir/testCXXCompiler.cxx.o
    /usr/bin/zigcpp-musl   -m64  -std=gnu++17 -fPIE -MD -MT CMakeFiles/cmTC_4e496.dir/testCXXCompiler.cxx.o -MF CMakeFiles/cmTC_4e496.dir/testCXXCompiler.cxx.o.d -o CMakeFiles/cmTC_4e496.dir/testCXXCompiler.cxx.o -c /root/.conan2/p/b/itk2e4a8ffa0cc64/b/build/Release/CMakeFiles/CMakeScratch/TryCompile-URVNGo/testCXXCompiler.cxx
    Linking CXX executable cmTC_4e496
    /root/.conan2/p/cmakee1219ba8516b0/p/bin/cmake -E cmake_link_script CMakeFiles/cmTC_4e496.dir/link.txt --verbose=1
    error: sub-compilation of musl libc.a failed
        /usr/lib/libc/musl/src/stdio/fgetwc.c:1:1: note: CacheCheckFailed
        /usr/lib/libc/musl/src/stdio/flockfile.c:1:1: note: CacheCheckFailed
        /usr/lib/libc/musl/src/stdio/feof.c:1:1: note: CacheCheckFailed
        /usr/lib/libc/musl/src/stdio/fgetpos.c:1:1: note: CacheCheckFailed
        /usr/lib/libc/musl/src/stdio/fputwc.c:1:1: note: CacheCheckFailed
        /usr/lib/libc/musl/src/stdio/fgetc.c:1:1: note: CacheCheckFailed
        /usr/lib/libc/musl/src/stdio/ferror.c:1:1: note: CacheCheckFailed
        /usr/lib/libc/musl/src/stdio/ext.c:1:1: note: CacheCheckFailed
        /usr/lib/libc/musl/src/stdio/__fdopen.c:1:1: note: CacheCheckFailed
        /usr/lib/libc/musl/src/stat/umask.c:1:1: note: CacheCheckFailed
        /usr/lib/libc/musl/src/stdio/fmemopen.c:1:1: note: CacheCheckFailed
        /usr/lib/libc/musl/src/stdio/dprintf.c:1:1: note: CacheCheckFailed

@andrewrk andrewrk removed the bug Observed behavior contradicts documented or intended behavior label Jan 25, 2025
@andrewrk andrewrk added this to the unplanned milestone Jan 25, 2025
@andrewrk
Copy link
Member

The locks are needed so that cache garbage collection does not remove those files while the library is still being built, and so that another zig process also building the same musl libc does not clobber the files in the cache directory.

Musl has approximately one file per function, which indeed is a lot.

Those file descriptors are cheap resources for the kernel. It would be good to solve the problem by allowing more, if you can.

There is no direct plan to address this problem, however, #2879 will help since every function that is provided by zig rather than musl will be one less lock on an object file.

@btertoolen
Copy link
Author

Alright that's clear, thanks. Then I will keep using the increased file descriptors limit for now. I dont see any issue with that

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants