Skip to content

[libc] add ioctl #141393

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

Merged
merged 18 commits into from
Jun 12, 2025
Merged

[libc] add ioctl #141393

merged 18 commits into from
Jun 12, 2025

Conversation

cowtoolz
Copy link
Contributor

@cowtoolz cowtoolz commented May 25, 2025

Closes #85275
Closes #90317
Updates #97191

Copy link

Thank you for submitting a Pull Request (PR) to the LLVM Project!

This PR will be automatically labeled and the relevant teams will be notified.

If you wish to, you can add reviewers by using the "Reviewers" section on this page.

If this is not working for you, it is probably because you do not have write permissions for the repository. In which case you can instead tag reviewers by name in a comment by using @ followed by their GitHub username.

If you have received no comments on your PR for a week, you can request a review by "ping"ing the PR by adding a comment “Ping”. The common courtesy "ping" rate is once a week. Please remember that you are asking for valuable time from other developers.

If you have further questions, they may be answered by the LLVM GitHub User Guide.

You can also ask questions in a comment on this PR, on the LLVM Discord or on the forums.

@llvmbot llvmbot added the libc label May 25, 2025
@llvmbot
Copy link
Member

llvmbot commented May 25, 2025

@llvm/pr-subscribers-libc

Author: ~cowtools (cowtoolz)

Changes

Closes #85275
Closes #90317


Full diff: https://github.com/llvm/llvm-project/pull/141393.diff

13 Files Affected:

  • (modified) libc/config/linux/aarch64/entrypoints.txt (+3)
  • (modified) libc/config/linux/arm/entrypoints.txt (+3)
  • (modified) libc/config/linux/riscv/entrypoints.txt (+3)
  • (modified) libc/config/linux/x86_64/entrypoints.txt (+3)
  • (modified) libc/src/sys/CMakeLists.txt (+1)
  • (added) libc/src/sys/ioctl/CMakeLists.txt (+10)
  • (added) libc/src/sys/ioctl/ioctl.h (+21)
  • (added) libc/src/sys/ioctl/linux/CMakeLists.txt (+12)
  • (added) libc/src/sys/ioctl/linux/ioctl.cpp (+40)
  • (modified) libc/test/src/sys/CMakeLists.txt (+1)
  • (added) libc/test/src/sys/ioctl/CMakeLists.txt (+3)
  • (added) libc/test/src/sys/ioctl/linux/CMakeLists.txt (+14)
  • (added) libc/test/src/sys/ioctl/linux/ioctl_test.cpp (+34)
diff --git a/libc/config/linux/aarch64/entrypoints.txt b/libc/config/linux/aarch64/entrypoints.txt
index 520046f768b5d..fcf1278eae723 100644
--- a/libc/config/linux/aarch64/entrypoints.txt
+++ b/libc/config/linux/aarch64/entrypoints.txt
@@ -245,6 +245,9 @@ set(TARGET_LIBC_ENTRYPOINTS
     # https://github.com/llvm/llvm-project/issues/80060
     # libc.src.sys.epoll.epoll_pwait2
 
+    # sys/ioctl.h entrypoints
+    libc.src.sys.ioctl.ioctl
+
     # sys/mman.h entrypoints
     libc.src.sys.mman.madvise
     libc.src.sys.mman.mincore
diff --git a/libc/config/linux/arm/entrypoints.txt b/libc/config/linux/arm/entrypoints.txt
index 7432a7e912e81..1161ae260be2e 100644
--- a/libc/config/linux/arm/entrypoints.txt
+++ b/libc/config/linux/arm/entrypoints.txt
@@ -172,6 +172,9 @@ set(TARGET_LIBC_ENTRYPOINTS
     libc.src.stdlib.free
     libc.src.stdlib.malloc
 
+    # sys/ioctl.h entrypoints
+    libc.src.sys.ioctl.ioctl
+
     # sys/mman.h entrypoints
     libc.src.sys.mman.mmap
     libc.src.sys.mman.munmap
diff --git a/libc/config/linux/riscv/entrypoints.txt b/libc/config/linux/riscv/entrypoints.txt
index 0b645a2d2fb8b..050fc2672a57e 100644
--- a/libc/config/linux/riscv/entrypoints.txt
+++ b/libc/config/linux/riscv/entrypoints.txt
@@ -246,6 +246,9 @@ set(TARGET_LIBC_ENTRYPOINTS
     # https://github.com/llvm/llvm-project/issues/80060
     # libc.src.sys.epoll.epoll_pwait2
 
+    # sys/ioctl.h entrypoints
+    libc.src.sys.ioctl.ioctl
+
     # sys/mman.h entrypoints
     libc.src.sys.mman.madvise
     libc.src.sys.mman.mincore
diff --git a/libc/config/linux/x86_64/entrypoints.txt b/libc/config/linux/x86_64/entrypoints.txt
index 9f447dd0d35d2..07ebf51f70774 100644
--- a/libc/config/linux/x86_64/entrypoints.txt
+++ b/libc/config/linux/x86_64/entrypoints.txt
@@ -246,6 +246,9 @@ set(TARGET_LIBC_ENTRYPOINTS
     # https://github.com/llvm/llvm-project/issues/80060
     # libc.src.sys.epoll.epoll_pwait2
 
+    # sys/ioctl.h entrypoints
+    libc.src.sys.ioctl.ioctl
+
     # sys/mman.h entrypoints
     libc.src.sys.mman.madvise
     libc.src.sys.mman.mincore
diff --git a/libc/src/sys/CMakeLists.txt b/libc/src/sys/CMakeLists.txt
index 9a73b80d35d2f..0fa11e9eee696 100644
--- a/libc/src/sys/CMakeLists.txt
+++ b/libc/src/sys/CMakeLists.txt
@@ -13,3 +13,4 @@ add_subdirectory(utsname)
 add_subdirectory(wait)
 add_subdirectory(prctl)
 add_subdirectory(uio)
+add_subdirectory(ioctl)
diff --git a/libc/src/sys/ioctl/CMakeLists.txt b/libc/src/sys/ioctl/CMakeLists.txt
new file mode 100644
index 0000000000000..099a1b96389fc
--- /dev/null
+++ b/libc/src/sys/ioctl/CMakeLists.txt
@@ -0,0 +1,10 @@
+if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${LIBC_TARGET_OS})
+  add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/${LIBC_TARGET_OS})
+endif()
+
+add_entrypoint_object(
+  ioctl
+  ALIAS
+  DEPENDS
+    .${LIBC_TARGET_OS}.ioctl
+)
diff --git a/libc/src/sys/ioctl/ioctl.h b/libc/src/sys/ioctl/ioctl.h
new file mode 100644
index 0000000000000..91d6bb7f7abe7
--- /dev/null
+++ b/libc/src/sys/ioctl/ioctl.h
@@ -0,0 +1,21 @@
+//===-- Implementation header for ioctl ---------------------------*-C++-*-===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef LLVM_LIBC_SRC_SYS_IOCTL_IOCTL_H
+#define LLVM_LIBC_SRC_SYS_IOCTL_IOCTL_H
+
+#include "src/__support/macros/config.h"
+#include <sys/ioctl.h>
+
+namespace LIBC_NAMESPACE_DECL {
+
+int ioctl(int fd, unsigned long request, ...);
+
+} // namespace LIBC_NAMESPACE_DECL
+
+#endif // LLVM_LIBC_SRC_SYS_IOCTL_IOCTL_H
diff --git a/libc/src/sys/ioctl/linux/CMakeLists.txt b/libc/src/sys/ioctl/linux/CMakeLists.txt
new file mode 100644
index 0000000000000..876f35aaee66c
--- /dev/null
+++ b/libc/src/sys/ioctl/linux/CMakeLists.txt
@@ -0,0 +1,12 @@
+add_entrypoint_object(
+  ioctl
+  SRCS
+    ioctl.cpp
+  HDRS
+    ../ioctl.h
+  DEPENDS
+    libc.include.sys_ioctl
+    libc.include.sys_syscall
+    libc.src.__support.OSUtil.osutil
+    libc.src.errno.errno
+)
diff --git a/libc/src/sys/ioctl/linux/ioctl.cpp b/libc/src/sys/ioctl/linux/ioctl.cpp
new file mode 100644
index 0000000000000..898385027105c
--- /dev/null
+++ b/libc/src/sys/ioctl/linux/ioctl.cpp
@@ -0,0 +1,40 @@
+//===---------- Linux implementation of the ioctl function ----------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+#include "src/sys/ioctl/ioctl.h"
+
+#include "src/__support/OSUtil/syscall.h" // For internal syscall function.
+#include "src/__support/common.h"
+#include "src/errno/libc_errno.h"
+#include <stdarg.h>
+#include <sys/syscall.h> // For syscall numbers.
+
+namespace LIBC_NAMESPACE_DECL {
+
+LLVM_LIBC_FUNCTION(int, ioctl, (int fd, unsigned long request, ...)) {
+  va_list vargs;
+  va_start(vargs, request);
+  void *data_pointer = va_arg(vargs, void *);
+  int ret =
+      LIBC_NAMESPACE::syscall_impl<int>(SYS_ioctl, fd, request, data_pointer);
+  va_end(vargs);
+
+  // From `man ioctl`:
+  // "Usually, on success zero is returned.  A few ioctl() operations
+  // use the return value as an output parameter and return a
+  // nonnegative value on success.  On error, -1 is returned, and errno
+  // is set to indicate the error."
+  if (ret < 0) {
+    libc_errno = -ret;
+    return -1;
+  }
+
+  return ret;
+}
+
+} // namespace LIBC_NAMESPACE_DECL
diff --git a/libc/test/src/sys/CMakeLists.txt b/libc/test/src/sys/CMakeLists.txt
index 224cc7905ad31..13bf91eef04be 100644
--- a/libc/test/src/sys/CMakeLists.txt
+++ b/libc/test/src/sys/CMakeLists.txt
@@ -13,3 +13,4 @@ add_subdirectory(auxv)
 add_subdirectory(epoll)
 add_subdirectory(uio)
 add_subdirectory(time)
+add_subdirectory(ioctl)
diff --git a/libc/test/src/sys/ioctl/CMakeLists.txt b/libc/test/src/sys/ioctl/CMakeLists.txt
new file mode 100644
index 0000000000000..b4bbe81c92ff2
--- /dev/null
+++ b/libc/test/src/sys/ioctl/CMakeLists.txt
@@ -0,0 +1,3 @@
+if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${LIBC_TARGET_OS})
+  add_subdirectory(${LIBC_TARGET_OS})
+endif()
diff --git a/libc/test/src/sys/ioctl/linux/CMakeLists.txt b/libc/test/src/sys/ioctl/linux/CMakeLists.txt
new file mode 100644
index 0000000000000..1466453fe08aa
--- /dev/null
+++ b/libc/test/src/sys/ioctl/linux/CMakeLists.txt
@@ -0,0 +1,14 @@
+add_custom_target(libc_sys_ioctl_unittests)
+
+add_libc_unittest(
+  ioctl_test
+  SUITE
+    libc_sys_ioctl_unittests
+  SRCS
+    ioctl_test.cpp
+  DEPENDS
+    libc.include.sys_ioctl
+    libc.include.sys_filio
+    libc.src.sys.ioctl.ioctl
+    libc.src.errno.errno
+)
diff --git a/libc/test/src/sys/ioctl/linux/ioctl_test.cpp b/libc/test/src/sys/ioctl/linux/ioctl_test.cpp
new file mode 100644
index 0000000000000..1752db8a57ce7
--- /dev/null
+++ b/libc/test/src/sys/ioctl/linux/ioctl_test.cpp
@@ -0,0 +1,34 @@
+//===-- Unittests for ioctl -----------------------------------------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+#include "src/errno/libc_errno.h"
+#include "src/sys/ioctl/ioctl.h"
+#include "test/UnitTest/ErrnoSetterMatcher.h"
+#include <sys/filio.h>
+#include <sys/ioctl.h>
+
+using LIBC_NAMESPACE::testing::ErrnoSetterMatcher::Fails;
+using LIBC_NAMESPACE::testing::ErrnoSetterMatcher::Succeeds;
+
+TEST(LlvmLibcSysIoctlTest, StdinFIONREAD) {
+  LIBC_NAMESPACE::libc_errno = 0;
+
+  // FIONREAD reports the number of readable bytes for fd
+  int bytes;
+  int ret = LIBC_NAMESPACE::ioctl(0, FIONREAD, &bytes);
+  ASSERT_ERRNO_SUCCESS();
+}
+
+TEST(LlvmLibcSysIoctlTest, InvalidCommandENOTTY) {
+  LIBC_NAMESPACE::libc_errno = 0;
+
+  // 0xDEADBEEF is just a random nonexistent command;
+  // calling this should always fail with ENOTTY
+  int ret = LIBC_NAMESPACE::ioctl(3, 0xDEADBEEF, NULL);
+  ASSERT_TRUE(ret == -1 && errno == ENOTTY);
+}

@cowtoolz
Copy link
Contributor Author

cowtoolz commented May 25, 2025

Via #85275

I also see open coded calls to ioctl in:

* src/unistd/linux/isatty.cpp
* src/termios/linux/tcgetattr.cpp
* src/termios/linux/tcsendbreak.cpp 
* src/termios/linux/tcgetsid.cpp
* src/termios/linux/tcdrain.cpp
* src/termios/linux/tcsetattr.cpp
* src/termios/linux/tcflush.cpp
* src/termios/linux/tcflow.cpp

I assume once ioctl is implemented, all of the above open coded calls should be replaced with the call to our internal wrapper.

I've already made these changes, should these be included in this PR?

@cowtoolz cowtoolz requested a review from jhuber6 May 25, 2025 16:18
cowtoolz and others added 2 commits May 25, 2025 12:23
Copy link
Contributor

@michaelrj-google michaelrj-google left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a good start, but the test needs some cleanup

Co-authored-by: Michael Jones <michaelrj@google.com>
@michaelrj-google
Copy link
Contributor

The code changes look good to me, but the premerge checks are failing. The error numbers are 25 (ENOTTY) and 9 (EBADF), so it's probably to do with running this on a buildbot instead of locally. It might be best to use open to create a file descriptor instead of using 0 and 3.

@cowtoolz cowtoolz requested a review from michaelrj-google June 9, 2025 18:04
Copy link

github-actions bot commented Jun 9, 2025

✅ With the latest revision this PR passed the C/C++ code formatter.

Copy link
Contributor

@michaelrj-google michaelrj-google left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks for completing this! Do you need me to merge this for you?

@jhuber6
Copy link
Contributor

jhuber6 commented Jun 11, 2025

LGTM, thanks for completing this! Do you need me to merge this for you?

It's their first PR so I'd assume so

@cowtoolz
Copy link
Contributor Author

LGTM, thanks for completing this! Do you need me to merge this for you?

Yes. Also, wanted to say thanks for the hand-holding on this one, has been a great learning experience.

@michaelrj-google michaelrj-google merged commit 4039fdb into llvm:main Jun 12, 2025
13 checks passed
Copy link

@cowtoolz Congratulations on having your first Pull Request (PR) merged into the LLVM Project!

Your changes will be combined with recent changes from other authors, then tested by our build bots. If there is a problem with a build, you may receive a report in an email or a comment on this PR.

Please check whether problems have been caused by your change specifically, as the builds can include changes from many authors. It is not uncommon for your change to be included in a build that fails due to someone else's changes, or infrastructure issues.

How to do this, and the rest of the post-merge process, is covered in detail here.

If your change does cause a problem, it may be reverted, or you can revert it yourself. This is a normal part of LLVM development. You can fix your changes and open a new PR to merge them again.

If you don't get any reports, no action is required from you. Your changes are working as expected, well done!

@llvm-ci
Copy link
Collaborator

llvm-ci commented Jun 12, 2025

LLVM Buildbot has detected a new failure on builder libc-aarch64-ubuntu-dbg running on libc-aarch64-ubuntu while building libc at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/104/builds/24398

Here is the relevant piece of the build log for the reference
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
-- Set CPU features: FullFP16
-- Compiler features available: builtin_ceil_floor_rint_trunc;builtin_fmax_fmin;builtin_fmaxf16_fminf16;builtin_round;cfloat128;float128;float16
-- Using getrandom for hashtable randomness
-- check-runtimes does nothing.
-- Configuring done
-- Generating done
-- Build files have been written to: /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu/build
@@@BUILD_STEP build libc@@@
Running: ninja libc
[1/2] Building CXX object libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o
FAILED: libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o 
/usr/bin/clang++ -DLIBC_NAMESPACE=__llvm_libc_20_0_0_git -D_DEBUG -I/home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu/llvm-project/libc -isystem libc/include -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -fdiagnostics-color -g -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_ADD_NULL_CHECKS -fpie -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -std=gnu++17 -MD -MT libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -MF libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o.d -o libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -c /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp
/home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp:13:10: fatal error: 'src/errno/libc_errno.h' file not found
#include "src/errno/libc_errno.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
ninja: build stopped: subcommand failed.
['ninja', 'libc'] exited with return code 1.
The build step threw an exception...
Traceback (most recent call last):
  File "../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 176, in step
    yield
  File "../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 138, in main
    run_command(['ninja', 'libc'])
  File "../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 191, in run_command
    util.report_run_cmd(cmd, cwd=directory)
  File "/home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu/llvm-zorg/zorg/buildbot/builders/annotated/util.py", line 49, in report_run_cmd
    subprocess.check_call(cmd, shell=shell, *args, **kwargs)
  File "/usr/lib/python2.7/subprocess.py", line 190, in check_call
    raise CalledProcessError(retcode, cmd)
CalledProcessError: Command '['ninja', 'libc']' returned non-zero exit status 1
@@@STEP_FAILURE@@@
@@@BUILD_STEP libc-unit-tests@@@
Running: ninja libc-unit-tests
[1/1016] Running unit test libc.test.src.math.exp10_test.__unit__
[==========] Running 3 tests from 1 test suite.
[ RUN      ] LlvmLibcExp10Test.SpecialNumbers
[       OK ] LlvmLibcExp10Test.SpecialNumbers (9 us)
[ RUN      ] LlvmLibcExp10Test.TrickyInputs
[       OK ] LlvmLibcExp10Test.TrickyInputs (748 us)
[ RUN      ] LlvmLibcExp10Test.InDoubleRange
 Test Rounding To Nearest...
 Exp10 failed: 0/1232/1232 tests.
   Max ULPs is at most: 0.
 Test Rounding Downward...
 Exp10 failed: 0/1232/1232 tests.
   Max ULPs is at most: 0.
 Test Rounding Upward...
 Exp10 failed: 0/1232/1232 tests.

@llvm-ci
Copy link
Collaborator

llvm-ci commented Jun 12, 2025

LLVM Buildbot has detected a new failure on builder libc-x86_64-debian running on libc-x86_64-debian while building libc at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/43/builds/23275

Here is the relevant piece of the build log for the reference
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
-- Skipping test for 'libc.src.string.memset_x86_64_opt_avx512' insufficient host cpu features 'AVX512F'
-- Skipping test for 'libc.src.strings.bcmp_x86_64_opt_avx512' insufficient host cpu features 'AVX512BW'
-- Skipping test for 'libc.src.strings.bzero_x86_64_opt_avx512' insufficient host cpu features 'AVX512F'
-- check-runtimes does nothing.
-- Configuring done
-- Generating done
-- Build files have been written to: /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian/build
@@@BUILD_STEP build libc@@@
Running: ninja libc
[1/2] Building CXX object libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o
FAILED: libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o 
/usr/bin/clang++ -DLIBC_NAMESPACE=__llvm_libc_20_0_0_git -I/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian/llvm-project/libc -isystem /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian/build/libc/include -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_ADD_NULL_CHECKS -fpie -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -std=gnu++17 -MD -MT libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -MF libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o.d -o libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -c /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp:13:10: fatal error: 'src/errno/libc_errno.h' file not found
#include "src/errno/libc_errno.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
ninja: build stopped: subcommand failed.
['ninja', 'libc'] exited with return code 1.
The build step threw an exception...
Traceback (most recent call last):
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 176, in step
    yield
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 138, in main
    run_command(['ninja', 'libc'])
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 191, in run_command
    util.report_run_cmd(cmd, cwd=directory)
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian/llvm-zorg/zorg/buildbot/builders/annotated/util.py", line 49, in report_run_cmd
    subprocess.check_call(cmd, shell=shell, *args, **kwargs)
  File "/usr/lib/python3.11/subprocess.py", line 413, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['ninja', 'libc']' returned non-zero exit status 1.
@@@STEP_FAILURE@@@
@@@BUILD_STEP libc-unit-tests@@@
Running: ninja libc-unit-tests
[1/1065] Running unit test libc.test.src.__support.block_test.__unit__
[==========] Running 23 tests from 1 test suite.
[ RUN      ] LlvmLibcBlockTest.CanCreateSingleAlignedBlock
[       OK ] LlvmLibcBlockTest.CanCreateSingleAlignedBlock (3 us)
[ RUN      ] LlvmLibcBlockTest.CanCreateUnalignedSingleBlock
[       OK ] LlvmLibcBlockTest.CanCreateUnalignedSingleBlock (1 us)
[ RUN      ] LlvmLibcBlockTest.CannotCreateTooSmallBlock
[       OK ] LlvmLibcBlockTest.CannotCreateTooSmallBlock (1 us)
[ RUN      ] LlvmLibcBlockTest.CanSplitBlock
[       OK ] LlvmLibcBlockTest.CanSplitBlock (1 us)
[ RUN      ] LlvmLibcBlockTest.CanSplitBlockUnaligned
[       OK ] LlvmLibcBlockTest.CanSplitBlockUnaligned (1 us)
[ RUN      ] LlvmLibcBlockTest.CanSplitMidBlock
[       OK ] LlvmLibcBlockTest.CanSplitMidBlock (1 us)
[ RUN      ] LlvmLibcBlockTest.CannotSplitTooSmallBlock

@llvm-ci
Copy link
Collaborator

llvm-ci commented Jun 12, 2025

LLVM Buildbot has detected a new failure on builder libc-x86_64-debian-gcc-fullbuild-dbg running on libc-x86_64-debian-fullbuild while building libc at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/131/builds/23876

Here is the relevant piece of the build log for the reference
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
[51/77] Generating header sys/types.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-gcc-fullbuild-dbg/llvm-project/runtimes/../libc/include/sys/types.yaml
[52/75] Generating header sys/uio.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-gcc-fullbuild-dbg/llvm-project/runtimes/../libc/include/sys/uio.yaml
[53/75] Generating header sys/utsname.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-gcc-fullbuild-dbg/llvm-project/runtimes/../libc/include/sys/utsname.yaml
[54/74] Generating header uchar.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-gcc-fullbuild-dbg/llvm-project/runtimes/../libc/include/uchar.yaml
[55/74] Generating header locale.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-gcc-fullbuild-dbg/llvm-project/runtimes/../libc/include/locale.yaml
[56/74] Generating header termios.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-gcc-fullbuild-dbg/llvm-project/runtimes/../libc/include/termios.yaml
[57/63] Generating header sys/ioctl.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-gcc-fullbuild-dbg/llvm-project/runtimes/../libc/include/sys/ioctl.yaml
[58/63] Generating header wchar.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-gcc-fullbuild-dbg/llvm-project/runtimes/../libc/include/wchar.yaml
[59/63] Generating header poll.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-gcc-fullbuild-dbg/llvm-project/runtimes/../libc/include/poll.yaml
[60/63] Building CXX object libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o
FAILED: libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o 
/usr/bin/g++ -DLIBC_NAMESPACE=__llvm_libc_20_0_0_git -D_DEBUG -I/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-gcc-fullbuild-dbg/llvm-project/libc -isystem /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-gcc-fullbuild-dbg/build/libc/include -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -Wimplicit-fallthrough -Wno-nonnull -Wno-class-memaccess -Wno-redundant-move -Wno-pessimizing-move -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -g -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_ADD_NULL_CHECKS -fpie -ffreestanding -DLIBC_FULL_BUILD -isystem/usr/lib/gcc/x86_64-linux-gnu/12//include -nostdinc -idirafter/usr/include -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -fext-numeric-literals -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -DLIBC_COPT_PUBLIC_PACKAGING -std=gnu++17 -MD -MT libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -MF libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o.d -o libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -c /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-gcc-fullbuild-dbg/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-gcc-fullbuild-dbg/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp:13:10: fatal error: src/errno/libc_errno.h: No such file or directory
   13 | #include "src/errno/libc_errno.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
[61/63] Building CXX object libc/src/unistd/linux/CMakeFiles/libc.src.unistd.linux.isatty.dir/isatty.cpp.o
[62/63] Generating header math.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-gcc-fullbuild-dbg/llvm-project/runtimes/../libc/include/math.yaml
ninja: build stopped: subcommand failed.
['ninja', 'libc'] exited with return code 1.
The build step threw an exception...
Traceback (most recent call last):
  File "/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-gcc-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 176, in step
    yield
  File "/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-gcc-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 138, in main
    run_command(['ninja', 'libc'])
  File "/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-gcc-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 191, in run_command
    util.report_run_cmd(cmd, cwd=directory)
  File "/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-gcc-fullbuild-dbg/llvm-zorg/zorg/buildbot/builders/annotated/util.py", line 49, in report_run_cmd
    subprocess.check_call(cmd, shell=shell, *args, **kwargs)
  File "/usr/lib/python3.11/subprocess.py", line 413, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['ninja', 'libc']' returned non-zero exit status 1.
@@@STEP_FAILURE@@@
@@@BUILD_STEP build libc-startup@@@
Running: ninja libc-startup
ninja: no work to do.
@@@BUILD_STEP libc-unit-tests@@@
Running: ninja libc-unit-tests
[1/1186] Running unit test libc.test.src.__support.block_test.__unit__
[==========] Running 23 tests from 1 test suite.
[ RUN      ] LlvmLibcBlockTest.CanCreateSingleAlignedBlock
[       OK ] LlvmLibcBlockTest.CanCreateSingleAlignedBlock (40 us)
[ RUN      ] LlvmLibcBlockTest.CanCreateUnalignedSingleBlock
[       OK ] LlvmLibcBlockTest.CanCreateUnalignedSingleBlock (3 us)
[ RUN      ] LlvmLibcBlockTest.CannotCreateTooSmallBlock
[       OK ] LlvmLibcBlockTest.CannotCreateTooSmallBlock (1 us)
[ RUN      ] LlvmLibcBlockTest.CanSplitBlock
[       OK ] LlvmLibcBlockTest.CanSplitBlock (19 us)

@llvm-ci
Copy link
Collaborator

llvm-ci commented Jun 12, 2025

LLVM Buildbot has detected a new failure on builder libc-aarch64-ubuntu-fullbuild-dbg running on libc-aarch64-ubuntu while building libc at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/71/builds/24410

Here is the relevant piece of the build log for the reference
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
[52/91] Generating header sys/auxv.h from /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/runtimes/../libc/include/sys/auxv.yaml
[53/89] Generating header time.h from /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/runtimes/../libc/include/time.yaml
[54/89] Generating header sys/prctl.h from /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/runtimes/../libc/include/sys/prctl.yaml
[55/87] Generating header signal.h from /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/runtimes/../libc/include/signal.yaml
[56/72] Generating header stdio.h from /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/runtimes/../libc/include/stdio.yaml
[57/69] Generating header dlfcn.h from /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/runtimes/../libc/include/dlfcn.yaml
[58/69] Generating header arpa/inet.h from /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/runtimes/../libc/include/arpa/inet.yaml
[59/69] Generating header spawn.h from /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/runtimes/../libc/include/spawn.yaml
[60/63] Generating header sys/ioctl.h from /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/runtimes/../libc/include/sys/ioctl.yaml
[61/63] Building CXX object libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o
FAILED: libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o 
/usr/bin/clang++ -DLIBC_NAMESPACE=__llvm_libc_20_0_0_git -D_DEBUG -I/home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/libc -isystem libc/include -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -fdiagnostics-color -g -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_ADD_NULL_CHECKS -fpie -ffreestanding -DLIBC_FULL_BUILD -nostdlibinc -idirafter/usr/include -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -std=gnu++17 -MD -MT libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -MF libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o.d -o libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -c /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp
/home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp:13:10: fatal error: 'src/errno/libc_errno.h' file not found
#include "src/errno/libc_errno.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
[62/63] Building CXX object libc/src/unistd/linux/CMakeFiles/libc.src.unistd.linux.isatty.dir/isatty.cpp.o
ninja: build stopped: subcommand failed.
['ninja', 'libc'] exited with return code 1.
The build step threw an exception...
Traceback (most recent call last):
  File "../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 176, in step
    yield
  File "../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 138, in main
    run_command(['ninja', 'libc'])
  File "../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 191, in run_command
    util.report_run_cmd(cmd, cwd=directory)
  File "/home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-zorg/zorg/buildbot/builders/annotated/util.py", line 49, in report_run_cmd
    subprocess.check_call(cmd, shell=shell, *args, **kwargs)
  File "/usr/lib/python2.7/subprocess.py", line 190, in check_call
    raise CalledProcessError(retcode, cmd)
CalledProcessError: Command '['ninja', 'libc']' returned non-zero exit status 1
@@@STEP_FAILURE@@@
@@@BUILD_STEP build libc-startup@@@
Running: ninja libc-startup
ninja: no work to do.
@@@BUILD_STEP libc-unit-tests@@@
Running: ninja libc-unit-tests
[1/914] Running unit test libc.test.src.fenv.exception_flags_test
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcFEnvTest.GetSetTestExceptFlag
[       OK ] LlvmLibcFEnvTest.GetSetTestExceptFlag (7 us)
Ran 1 tests.  PASS: 1  FAIL: 0
[2/914] Running unit test libc.test.src.fenv.feholdexcept_test.__unit__
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcFEnvTest.RaiseAndCrash
[       OK ] LlvmLibcFEnvTest.RaiseAndCrash (2 us)
Ran 1 tests.  PASS: 1  FAIL: 0
[3/914] Running unit test libc.test.src.fenv.getenv_and_setenv_test

@llvm-ci
Copy link
Collaborator

llvm-ci commented Jun 12, 2025

LLVM Buildbot has detected a new failure on builder libc-x86_64-debian-fullbuild-dbg-asan running on libc-x86_64-debian-fullbuild while building libc at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/171/builds/23753

Here is the relevant piece of the build log for the reference
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
[52/94] Generating header sys/mman.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/runtimes/../libc/include/sys/mman.yaml
[53/76] Generating header termios.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/runtimes/../libc/include/termios.yaml
[54/65] Generating header sys/socket.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/runtimes/../libc/include/sys/socket.yaml
[55/63] Generating header uchar.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/runtimes/../libc/include/uchar.yaml
[56/63] Generating header poll.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/runtimes/../libc/include/poll.yaml
[57/63] Generating header locale.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/runtimes/../libc/include/locale.yaml
[58/63] Generating header wchar.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/runtimes/../libc/include/wchar.yaml
[59/63] Generating header sys/ioctl.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/runtimes/../libc/include/sys/ioctl.yaml
[60/63] Generating header math.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/runtimes/../libc/include/math.yaml
[61/63] Building CXX object libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o
FAILED: libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o 
/usr/bin/clang++ -DLIBC_NAMESPACE=__llvm_libc_20_0_0_git -D_DEBUG -I/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc -isystem /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/build/libc/include -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fno-omit-frame-pointer -fsanitize=address -fdiagnostics-color -g -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_ADD_NULL_CHECKS -fpie -ffreestanding -DLIBC_FULL_BUILD -nostdlibinc -idirafter/usr/include -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -std=gnu++17 -MD -MT libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -MF libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o.d -o libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -c /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp:13:10: fatal error: 'src/errno/libc_errno.h' file not found
#include "src/errno/libc_errno.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
[62/63] Building CXX object libc/src/unistd/linux/CMakeFiles/libc.src.unistd.linux.isatty.dir/isatty.cpp.o
ninja: build stopped: subcommand failed.
['ninja', 'libc'] exited with return code 1.
The build step threw an exception...
Traceback (most recent call last):
  File "/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 176, in step
    yield
  File "/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 138, in main
    run_command(['ninja', 'libc'])
  File "/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 191, in run_command
    util.report_run_cmd(cmd, cwd=directory)
  File "/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-zorg/zorg/buildbot/builders/annotated/util.py", line 49, in report_run_cmd
    subprocess.check_call(cmd, shell=shell, *args, **kwargs)
  File "/usr/lib/python3.11/subprocess.py", line 413, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['ninja', 'libc']' returned non-zero exit status 1.
@@@STEP_FAILURE@@@
@@@BUILD_STEP build libc-startup@@@
Running: ninja libc-startup
ninja: no work to do.
@@@BUILD_STEP libc-unit-tests@@@
Running: ninja libc-unit-tests
[1/1185] Running unit test libc.test.src.__support.freelist_test.__unit__
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcFreeList.FreeList
[       OK ] LlvmLibcFreeList.FreeList (30 us)
Ran 1 tests.  PASS: 1  FAIL: 0
[2/1185] Running unit test libc.test.src.__support.freetrie_test.__unit__
[==========] Running 5 tests from 1 test suite.
[ RUN      ] LlvmLibcFreeTrie.FindBestFitRoot
[       OK ] LlvmLibcFreeTrie.FindBestFitRoot (24 us)
[ RUN      ] LlvmLibcFreeTrie.FindBestFitLower
[       OK ] LlvmLibcFreeTrie.FindBestFitLower (14 us)

@llvm-ci
Copy link
Collaborator

llvm-ci commented Jun 12, 2025

LLVM Buildbot has detected a new failure on builder libc-x86_64-debian-dbg-asan running on libc-x86_64-debian while building libc at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/147/builds/22827

Here is the relevant piece of the build log for the reference
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
-- Skipping test for 'libc.src.string.memset_x86_64_opt_avx512' insufficient host cpu features 'AVX512F'
-- Skipping test for 'libc.src.strings.bcmp_x86_64_opt_avx512' insufficient host cpu features 'AVX512BW'
-- Skipping test for 'libc.src.strings.bzero_x86_64_opt_avx512' insufficient host cpu features 'AVX512F'
-- check-runtimes does nothing.
-- Configuring done
-- Generating done
-- Build files have been written to: /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-asan/build
@@@BUILD_STEP build libc@@@
Running: ninja libc
[1/2] Building CXX object libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o
FAILED: libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o 
/usr/bin/clang++ -DLIBC_NAMESPACE=__llvm_libc_20_0_0_git -D_DEBUG -I/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-asan/llvm-project/libc -isystem /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-asan/build/libc/include -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fno-omit-frame-pointer -fsanitize=address -fdiagnostics-color -g -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_ADD_NULL_CHECKS -fpie -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -std=gnu++17 -MD -MT libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -MF libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o.d -o libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -c /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-asan/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-asan/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp:13:10: fatal error: 'src/errno/libc_errno.h' file not found
#include "src/errno/libc_errno.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
ninja: build stopped: subcommand failed.
['ninja', 'libc'] exited with return code 1.
The build step threw an exception...
Traceback (most recent call last):
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian-dbg-asan/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 176, in step
    yield
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian-dbg-asan/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 138, in main
    run_command(['ninja', 'libc'])
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian-dbg-asan/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 191, in run_command
    util.report_run_cmd(cmd, cwd=directory)
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian-dbg-asan/llvm-zorg/zorg/buildbot/builders/annotated/util.py", line 49, in report_run_cmd
    subprocess.check_call(cmd, shell=shell, *args, **kwargs)
  File "/usr/lib/python3.11/subprocess.py", line 413, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['ninja', 'libc']' returned non-zero exit status 1.
@@@STEP_FAILURE@@@
@@@BUILD_STEP libc-unit-tests@@@
Running: ninja libc-unit-tests
[1/1062] Running unit test libc.test.src.__support.block_test.__unit__
[==========] Running 23 tests from 1 test suite.
[ RUN      ] LlvmLibcBlockTest.CanCreateSingleAlignedBlock
[       OK ] LlvmLibcBlockTest.CanCreateSingleAlignedBlock (44 us)
[ RUN      ] LlvmLibcBlockTest.CanCreateUnalignedSingleBlock
[       OK ] LlvmLibcBlockTest.CanCreateUnalignedSingleBlock (6 us)
[ RUN      ] LlvmLibcBlockTest.CannotCreateTooSmallBlock
[       OK ] LlvmLibcBlockTest.CannotCreateTooSmallBlock (3 us)
[ RUN      ] LlvmLibcBlockTest.CanSplitBlock
[       OK ] LlvmLibcBlockTest.CanSplitBlock (8 us)
[ RUN      ] LlvmLibcBlockTest.CanSplitBlockUnaligned
[       OK ] LlvmLibcBlockTest.CanSplitBlockUnaligned (7 us)
[ RUN      ] LlvmLibcBlockTest.CanSplitMidBlock
[       OK ] LlvmLibcBlockTest.CanSplitMidBlock (7 us)
[ RUN      ] LlvmLibcBlockTest.CannotSplitTooSmallBlock

@llvm-ci
Copy link
Collaborator

llvm-ci commented Jun 12, 2025

LLVM Buildbot has detected a new failure on builder libc-x86_64-debian-fullbuild-dbg running on libc-x86_64-debian-fullbuild while building libc at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/179/builds/23776

Here is the relevant piece of the build log for the reference
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
[51/81] Generating header uchar.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/uchar.yaml
[52/81] Generating header sys/types.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/sys/types.yaml
[53/79] Generating header sys/statvfs.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/sys/statvfs.yaml
[54/79] Generating header poll.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/poll.yaml
[55/79] Generating header sys/socket.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/sys/socket.yaml
[56/77] Generating header termios.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/termios.yaml
[57/66] Generating header sys/wait.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/sys/wait.yaml
[58/63] Generating header locale.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/locale.yaml
[59/63] Generating header wchar.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/wchar.yaml
[60/63] Building CXX object libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o
FAILED: libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o 
/usr/bin/clang++ -DLIBC_NAMESPACE=__llvm_libc_20_0_0_git -D_DEBUG -I/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/libc -isystem /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/build/libc/include -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -g -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_ADD_NULL_CHECKS -fpie -ffreestanding -DLIBC_FULL_BUILD -nostdlibinc -idirafter/usr/include -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -std=gnu++17 -MD -MT libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -MF libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o.d -o libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -c /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp:13:10: fatal error: 'src/errno/libc_errno.h' file not found
#include "src/errno/libc_errno.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
[61/63] Building CXX object libc/src/unistd/linux/CMakeFiles/libc.src.unistd.linux.isatty.dir/isatty.cpp.o
[62/63] Generating header math.h from /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/math.yaml
ninja: build stopped: subcommand failed.
['ninja', 'libc'] exited with return code 1.
The build step threw an exception...
Traceback (most recent call last):
  File "/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 176, in step
    yield
  File "/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 138, in main
    run_command(['ninja', 'libc'])
  File "/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 191, in run_command
    util.report_run_cmd(cmd, cwd=directory)
  File "/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg/llvm-zorg/zorg/buildbot/builders/annotated/util.py", line 49, in report_run_cmd
    subprocess.check_call(cmd, shell=shell, *args, **kwargs)
  File "/usr/lib/python3.11/subprocess.py", line 413, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['ninja', 'libc']' returned non-zero exit status 1.
@@@STEP_FAILURE@@@
@@@BUILD_STEP build libc-startup@@@
Running: ninja libc-startup
ninja: no work to do.
@@@BUILD_STEP libc-unit-tests@@@
Running: ninja libc-unit-tests

@llvm-ci
Copy link
Collaborator

llvm-ci commented Jun 12, 2025

LLVM Buildbot has detected a new failure on builder libc-x86_64-debian-dbg running on libc-x86_64-debian while building libc at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/93/builds/23350

Here is the relevant piece of the build log for the reference
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
-- Skipping test for 'libc.src.string.memset_x86_64_opt_avx512' insufficient host cpu features 'AVX512F'
-- Skipping test for 'libc.src.strings.bcmp_x86_64_opt_avx512' insufficient host cpu features 'AVX512BW'
-- Skipping test for 'libc.src.strings.bzero_x86_64_opt_avx512' insufficient host cpu features 'AVX512F'
-- check-runtimes does nothing.
-- Configuring done
-- Generating done
-- Build files have been written to: /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg/build
@@@BUILD_STEP build libc@@@
Running: ninja libc
[1/2] Building CXX object libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o
FAILED: libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o 
/usr/bin/clang++ -DLIBC_NAMESPACE=__llvm_libc_20_0_0_git -D_DEBUG -I/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg/llvm-project/libc -isystem /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg/build/libc/include -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -g -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_ADD_NULL_CHECKS -fpie -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -std=gnu++17 -MD -MT libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -MF libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o.d -o libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -c /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp:13:10: fatal error: 'src/errno/libc_errno.h' file not found
#include "src/errno/libc_errno.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
ninja: build stopped: subcommand failed.
['ninja', 'libc'] exited with return code 1.
The build step threw an exception...
Traceback (most recent call last):
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 176, in step
    yield
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 138, in main
    run_command(['ninja', 'libc'])
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 191, in run_command
    util.report_run_cmd(cmd, cwd=directory)
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian-dbg/llvm-zorg/zorg/buildbot/builders/annotated/util.py", line 49, in report_run_cmd
    subprocess.check_call(cmd, shell=shell, *args, **kwargs)
  File "/usr/lib/python3.11/subprocess.py", line 413, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['ninja', 'libc']' returned non-zero exit status 1.
@@@STEP_FAILURE@@@
@@@BUILD_STEP libc-unit-tests@@@
Running: ninja libc-unit-tests
[1/1065] Running unit test libc.test.src.__support.block_test.__unit__
[==========] Running 23 tests from 1 test suite.
[ RUN      ] LlvmLibcBlockTest.CanCreateSingleAlignedBlock
[       OK ] LlvmLibcBlockTest.CanCreateSingleAlignedBlock (9 us)
[ RUN      ] LlvmLibcBlockTest.CanCreateUnalignedSingleBlock
[       OK ] LlvmLibcBlockTest.CanCreateUnalignedSingleBlock (2 us)
[ RUN      ] LlvmLibcBlockTest.CannotCreateTooSmallBlock
[       OK ] LlvmLibcBlockTest.CannotCreateTooSmallBlock (2 us)
[ RUN      ] LlvmLibcBlockTest.CanSplitBlock
[       OK ] LlvmLibcBlockTest.CanSplitBlock (2 us)
[ RUN      ] LlvmLibcBlockTest.CanSplitBlockUnaligned
[       OK ] LlvmLibcBlockTest.CanSplitBlockUnaligned (2 us)
[ RUN      ] LlvmLibcBlockTest.CanSplitMidBlock
[       OK ] LlvmLibcBlockTest.CanSplitMidBlock (2 us)
[ RUN      ] LlvmLibcBlockTest.CannotSplitTooSmallBlock

@llvm-ci
Copy link
Collaborator

llvm-ci commented Jun 12, 2025

LLVM Buildbot has detected a new failure on builder libc-x86_64-debian-dbg-bootstrap-build running on libc-x86_64-debian while building libc at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/200/builds/11158

Here is the relevant piece of the build log for the reference
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
-- Skipping test for 'libc.src.string.memcpy_x86_64_opt_avx512' insufficient host cpu features 'AVX512F'
-- Skipping test for 'libc.src.string.memmove_x86_64_opt_avx512' insufficient host cpu features 'AVX512F'
-- Skipping test for 'libc.src.string.memset_x86_64_opt_avx512' insufficient host cpu features 'AVX512F'
-- Skipping test for 'libc.src.strings.bcmp_x86_64_opt_avx512' insufficient host cpu features 'AVX512BW'
-- Skipping test for 'libc.src.strings.bzero_x86_64_opt_avx512' insufficient host cpu features 'AVX512F'
-- check-runtimes does nothing.
-- Configuring done
-- Generating done
-- Build files have been written to: /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/build/runtimes/runtimes-bins
[1/2] Building CXX object libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o
FAILED: libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o 
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/build/./bin/clang++ --target=x86_64-unknown-linux-gnu -DLIBC_NAMESPACE=__llvm_libc_20_0_0_git -D_DEBUG -I/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/llvm-project/libc -isystem /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/build/runtimes/runtimes-bins/libc/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -g -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_ADD_NULL_CHECKS -fpie -ffixed-point -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -std=gnu++17 -MD -MT libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -MF libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o.d -o libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -c /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp:13:10: fatal error: 'src/errno/libc_errno.h' file not found
   13 | #include "src/errno/libc_errno.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
ninja: build stopped: subcommand failed.
FAILED: runtimes/CMakeFiles/libc /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/build/runtimes/CMakeFiles/libc 
cd /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/build/runtimes/runtimes-bins && /usr/bin/cmake --build /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/build/runtimes/runtimes-bins/ --target libc --config Debug
ninja: build stopped: subcommand failed.
['ninja', 'libc'] exited with return code 1.
The build step threw an exception...
Traceback (most recent call last):
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 176, in step
    yield
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 138, in main
    run_command(['ninja', 'libc'])
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 191, in run_command
    util.report_run_cmd(cmd, cwd=directory)
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/llvm-zorg/zorg/buildbot/builders/annotated/util.py", line 49, in report_run_cmd
    subprocess.check_call(cmd, shell=shell, *args, **kwargs)
  File "/usr/lib/python3.11/subprocess.py", line 413, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['ninja', 'libc']' returned non-zero exit status 1.
@@@STEP_FAILURE@@@
@@@BUILD_STEP check-libc@@@
Running: ninja check-libc
[1/3144] Building CommentHTMLTagsProperties.inc...
[2/3144] Building CommentHTMLTags.inc...
[3/3144] Building StmtDataCollectors.inc...
[4/3144] Building BuiltinTemplates.inc...
[5/3022] Building Attributes.inc...
[6/2344] Building GenVT.inc...
[7/606] Building AbstractBasicReader.inc...
[8/606] Building AbstractBasicWriter.inc...
[9/606] Building CommentHTMLNamedCharacterReferences.inc...
[10/606] Building CommentCommandInfo.inc...
[11/606] Building CommentCommandList.inc...
[12/31] Building Opcodes.inc...
Step 6 (build libc) failure: build libc (failure)
...
-- Skipping test for 'libc.src.string.memcpy_x86_64_opt_avx512' insufficient host cpu features 'AVX512F'
-- Skipping test for 'libc.src.string.memmove_x86_64_opt_avx512' insufficient host cpu features 'AVX512F'
-- Skipping test for 'libc.src.string.memset_x86_64_opt_avx512' insufficient host cpu features 'AVX512F'
-- Skipping test for 'libc.src.strings.bcmp_x86_64_opt_avx512' insufficient host cpu features 'AVX512BW'
-- Skipping test for 'libc.src.strings.bzero_x86_64_opt_avx512' insufficient host cpu features 'AVX512F'
-- check-runtimes does nothing.
-- Configuring done
-- Generating done
-- Build files have been written to: /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/build/runtimes/runtimes-bins
[1/2] Building CXX object libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o
FAILED: libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o 
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/build/./bin/clang++ --target=x86_64-unknown-linux-gnu -DLIBC_NAMESPACE=__llvm_libc_20_0_0_git -D_DEBUG -I/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/llvm-project/libc -isystem /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/build/runtimes/runtimes-bins/libc/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -g -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_ADD_NULL_CHECKS -fpie -ffixed-point -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -std=gnu++17 -MD -MT libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -MF libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o.d -o libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -c /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp
/home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp:13:10: fatal error: 'src/errno/libc_errno.h' file not found
   13 | #include "src/errno/libc_errno.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
ninja: build stopped: subcommand failed.
FAILED: runtimes/CMakeFiles/libc /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/build/runtimes/CMakeFiles/libc 
cd /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/build/runtimes/runtimes-bins && /usr/bin/cmake --build /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/build/runtimes/runtimes-bins/ --target libc --config Debug
ninja: build stopped: subcommand failed.
['ninja', 'libc'] exited with return code 1.
The build step threw an exception...
Traceback (most recent call last):
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 176, in step
    yield
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 138, in main
    run_command(['ninja', 'libc'])
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 191, in run_command
    util.report_run_cmd(cmd, cwd=directory)
  File "/home/llvm-libc-buildbot/home/sivachandra/libc-x86_64-debian/libc-x86_64-debian-dbg-bootstrap-build/llvm-zorg/zorg/buildbot/builders/annotated/util.py", line 49, in report_run_cmd
    subprocess.check_call(cmd, shell=shell, *args, **kwargs)
  File "/usr/lib/python3.11/subprocess.py", line 413, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['ninja', 'libc']' returned non-zero exit status 1.

michaelrj-google added a commit to michaelrj-google/llvm-project that referenced this pull request Jun 12, 2025
Since errno was moved in
llvm#143187 the code including it
in llvm#141393 was rendered
incorrect. This patch fixes the include and the cmake depends.
@michaelrj-google
Copy link
Contributor

It looks like the problem is #143187 moved where errno is. I've put up #143928 to fix it.

@llvm-ci
Copy link
Collaborator

llvm-ci commented Jun 12, 2025

LLVM Buildbot has detected a new failure on builder libc-riscv64-debian-fullbuild-dbg running on libc-riscv64-debian while building libc at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/183/builds/14614

Here is the relevant piece of the build log for the reference
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
[52/77] Generating header uchar.h from /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/uchar.yaml
[53/77] Generating header sys/wait.h from /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/sys/wait.yaml
[54/74] Generating header termios.h from /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/termios.yaml
[55/63] Generating sys-ioctl-macros.h
[56/63] Generating header sys/uio.h from /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/sys/uio.yaml
[57/63] Generating header locale.h from /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/locale.yaml
[58/63] Generating header wchar.h from /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/wchar.yaml
[59/63] Generating header poll.h from /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/poll.yaml
[60/63] Generating header sys/ioctl.h from /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/sys/ioctl.yaml
[61/63] Building CXX object libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o
FAILED: libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o 
/usr/bin/clang++ -DLIBC_NAMESPACE=__llvm_libc_20_0_0_git -D_DEBUG -I/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc -isystem /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/libc/include -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -fdiagnostics-color -g -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_ADD_NULL_CHECKS -fpie -ffreestanding -DLIBC_FULL_BUILD -nostdlibinc -idirafter/usr/include -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -std=gnu++17 -MD -MT libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -MF libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o.d -o libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -c /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp
/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp:13:10: fatal error: 'src/errno/libc_errno.h' file not found
#include "src/errno/libc_errno.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
[62/63] Building CXX object libc/src/unistd/linux/CMakeFiles/libc.src.unistd.linux.isatty.dir/isatty.cpp.o
ninja: build stopped: subcommand failed.
['ninja', 'libc'] exited with return code 1.
The build step threw an exception...
Traceback (most recent call last):
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 176, in step
    yield
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 138, in main
    run_command(['ninja', 'libc'])
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 191, in run_command
    util.report_run_cmd(cmd, cwd=directory)
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-zorg/zorg/buildbot/builders/annotated/util.py", line 49, in report_run_cmd
    subprocess.check_call(cmd, shell=shell, *args, **kwargs)
  File "/usr/lib/python3.10/subprocess.py", line 369, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['ninja', 'libc']' returned non-zero exit status 1.
@@@STEP_FAILURE@@@
@@@BUILD_STEP build libc-startup@@@
Running: ninja libc-startup
Step 6 (build libc) failure: build libc (failure)
...
[52/77] Generating header uchar.h from /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/uchar.yaml
[53/77] Generating header sys/wait.h from /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/sys/wait.yaml
[54/74] Generating header termios.h from /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/termios.yaml
[55/63] Generating sys-ioctl-macros.h
[56/63] Generating header sys/uio.h from /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/sys/uio.yaml
[57/63] Generating header locale.h from /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/locale.yaml
[58/63] Generating header wchar.h from /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/wchar.yaml
[59/63] Generating header poll.h from /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/poll.yaml
[60/63] Generating header sys/ioctl.h from /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/runtimes/../libc/include/sys/ioctl.yaml
[61/63] Building CXX object libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o
FAILED: libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o 
/usr/bin/clang++ -DLIBC_NAMESPACE=__llvm_libc_20_0_0_git -D_DEBUG -I/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc -isystem /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/libc/include -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -fdiagnostics-color -g -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_ADD_NULL_CHECKS -fpie -ffreestanding -DLIBC_FULL_BUILD -nostdlibinc -idirafter/usr/include -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -std=gnu++17 -MD -MT libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -MF libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o.d -o libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -c /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp
/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp:13:10: fatal error: 'src/errno/libc_errno.h' file not found
#include "src/errno/libc_errno.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
[62/63] Building CXX object libc/src/unistd/linux/CMakeFiles/libc.src.unistd.linux.isatty.dir/isatty.cpp.o
ninja: build stopped: subcommand failed.
['ninja', 'libc'] exited with return code 1.
The build step threw an exception...
Traceback (most recent call last):
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 176, in step
    yield
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 138, in main
    run_command(['ninja', 'libc'])
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 191, in run_command
    util.report_run_cmd(cmd, cwd=directory)
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-zorg/zorg/buildbot/builders/annotated/util.py", line 49, in report_run_cmd
    subprocess.check_call(cmd, shell=shell, *args, **kwargs)
  File "/usr/lib/python3.10/subprocess.py", line 369, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['ninja', 'libc']' returned non-zero exit status 1.

michaelrj-google added a commit that referenced this pull request Jun 12, 2025
Since errno was moved in
#143187 the code including it
in #141393 was rendered
incorrect. This patch fixes the include and the cmake depends.
@llvm-ci
Copy link
Collaborator

llvm-ci commented Jun 12, 2025

LLVM Buildbot has detected a new failure on builder libc-riscv64-debian-dbg running on libc-riscv64-debian while building libc at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/188/builds/15538

Here is the relevant piece of the build log for the reference
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
  Math tests using MPC will be skipped.


-- check-runtimes does nothing.
-- Configuring done
-- Generating done
-- Build files have been written to: /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-dbg/build
@@@BUILD_STEP build libc@@@
Running: ninja libc
[1/2] Building CXX object libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o
FAILED: libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o 
/usr/bin/clang++ -DLIBC_NAMESPACE=__llvm_libc_20_0_0_git -D_DEBUG -I/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-dbg/llvm-project/libc -isystem /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-dbg/build/libc/include -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -fdiagnostics-color -g -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_ADD_NULL_CHECKS -fpie -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -std=gnu++17 -MD -MT libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -MF libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o.d -o libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -c /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-dbg/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp
/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-dbg/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp:13:10: fatal error: 'src/errno/libc_errno.h' file not found
#include "src/errno/libc_errno.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
ninja: build stopped: subcommand failed.
['ninja', 'libc'] exited with return code 1.
The build step threw an exception...
Traceback (most recent call last):
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 176, in step
    yield
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 138, in main
    run_command(['ninja', 'libc'])
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 191, in run_command
    util.report_run_cmd(cmd, cwd=directory)
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-dbg/llvm-zorg/zorg/buildbot/builders/annotated/util.py", line 49, in report_run_cmd
    subprocess.check_call(cmd, shell=shell, *args, **kwargs)
  File "/usr/lib/python3.10/subprocess.py", line 369, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['ninja', 'libc']' returned non-zero exit status 1.
@@@STEP_FAILURE@@@
@@@BUILD_STEP libc-unit-tests@@@
Running: ninja libc-unit-tests
[1/1178] Running unit test libc.test.src.__support.freelist_test.__unit__
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcFreeList.FreeList
[       OK ] LlvmLibcFreeList.FreeList (36 us)
Ran 1 tests.  PASS: 1  FAIL: 0
[2/1178] Running unit test libc.test.src.__support.freetrie_test.__unit__
[==========] Running 5 tests from 1 test suite.
[ RUN      ] LlvmLibcFreeTrie.FindBestFitRoot
[       OK ] LlvmLibcFreeTrie.FindBestFitRoot (24 us)
[ RUN      ] LlvmLibcFreeTrie.FindBestFitLower
[       OK ] LlvmLibcFreeTrie.FindBestFitLower (20 us)
[ RUN      ] LlvmLibcFreeTrie.FindBestFitUpper
[       OK ] LlvmLibcFreeTrie.FindBestFitUpper (16 us)
[ RUN      ] LlvmLibcFreeTrie.FindBestFitLowerAndUpper
[       OK ] LlvmLibcFreeTrie.FindBestFitLowerAndUpper (22 us)

llvm-sync bot pushed a commit to arm/arm-toolchain that referenced this pull request Jun 12, 2025
Since errno was moved in
llvm/llvm-project#143187 the code including it
in llvm/llvm-project#141393 was rendered
incorrect. This patch fixes the include and the cmake depends.
@llvm-ci
Copy link
Collaborator

llvm-ci commented Jun 12, 2025

LLVM Buildbot has detected a new failure on builder libc-riscv32-qemu-yocto-fullbuild-dbg running on rv32gc-qemu-system while building libc at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/196/builds/8972

Here is the relevant piece of the build log for the reference
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
[46/76] Generating header termios.h from /home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-project/runtimes/../libc/include/termios.yaml
[47/65] Generating header features.h from /home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-project/runtimes/../libc/include/features.yaml
[48/65] Generating header sys/socket.h from /home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-project/runtimes/../libc/include/sys/socket.yaml
[49/63] Generating header stdckdint.h from /home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-project/runtimes/../libc/include/stdckdint.yaml
[50/63] Generating header wchar.h from /home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-project/runtimes/../libc/include/wchar.yaml
[51/63] Generating header complex.h from /home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-project/runtimes/../libc/include/complex.yaml
[52/63] Generating header endian.h from /home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-project/runtimes/../libc/include/endian.yaml
[53/63] Generating header sysexits.h from /home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-project/runtimes/../libc/include/sysexits.yaml
[54/63] Generating header elf.h from /home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-project/runtimes/../libc/include/elf.yaml
[55/63] Building CXX object libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o
FAILED: libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o 
/usr/local/bin/clang++ -DLIBC_NAMESPACE=__llvm_libc_21_0_0_git -D_DEBUG -I/home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-project/libc -isystem /home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/build/libc/include -mabi=ilp32d -march=rv32imafdc --target=riscv32-unknown-linux-gnu --sysroot=/opt/riscv/sysroot --gcc-toolchain=/opt/riscv -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -g -std=gnu++17 --target=riscv32-unknown-linux-gnu -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_ADD_NULL_CHECKS -fpie -ffreestanding -DLIBC_FULL_BUILD -nostdlibinc -idirafter=/usr/include -ffixed-point -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -MD -MT libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -MF libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o.d -o libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -c /home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp
/home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp:13:10: fatal error: 'src/errno/libc_errno.h' file not found
   13 | #include "src/errno/libc_errno.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
[56/63] Generating header malloc.h from /home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-project/runtimes/../libc/include/malloc.yaml
[57/63] Generating header strings.h from /home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-project/runtimes/../libc/include/strings.yaml
[58/63] Generating header poll.h from /home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-project/runtimes/../libc/include/poll.yaml
[59/63] Building CXX object libc/src/unistd/linux/CMakeFiles/libc.src.unistd.linux.isatty.dir/isatty.cpp.o
[60/63] Generating header stdbit.h from /home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-project/runtimes/../libc/include/stdbit.yaml
[61/63] Generating header stdfix.h from /home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-project/runtimes/../libc/include/stdfix.yaml
[62/63] Generating header math.h from /home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-project/runtimes/../libc/include/math.yaml
ninja: build stopped: subcommand failed.
['ninja', 'libc'] exited with return code 1.
The build step threw an exception...
Traceback (most recent call last):
  File "/home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 176, in step
    yield
  File "/home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 138, in main
    run_command(['ninja', 'libc'])
  File "/home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 191, in run_command
    util.report_run_cmd(cmd, cwd=directory)
  File "/home/libcrv32buildbot/bbroot/libc-riscv32-qemu-yocto-fullbuild-dbg/llvm-zorg/zorg/buildbot/builders/annotated/util.py", line 49, in report_run_cmd
    subprocess.check_call(cmd, shell=shell, *args, **kwargs)
  File "/usr/lib/python3.12/subprocess.py", line 413, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['ninja', 'libc']' returned non-zero exit status 1.
@@@STEP_FAILURE@@@
@@@BUILD_STEP build libc-startup@@@
Running: ninja libc-startup
ninja: no work to do.
@@@BUILD_STEP libc-unit-tests@@@
Running: ninja libc-unit-tests
[1/1016] Building CXX object libc/src/unistd/linux/CMakeFiles/libc.src.unistd.linux.isatty.__internal__.dir/isatty.cpp.o
[2/1016] Linking CXX executable libc/test/src/unistd/libc.test.src.unistd.isatty_test.__build__
[3/1016] Running unit test libc.test.src.__support.CPP.array_test.__unit__
sh: line 1: /timer.20895: Permission denied
[==========] Running 2 tests from 1 test suite.

@michaelrj-google
Copy link
Contributor

The buildbots seem to be clear now, there might be some messages from incomplete runs but the new runs are coming back green.

@llvm-ci
Copy link
Collaborator

llvm-ci commented Jun 12, 2025

LLVM Buildbot has detected a new failure on builder premerge-monolithic-linux running on premerge-linux-1 while building libc at step 6 "build-unified-tree".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/153/builds/34642

Here is the relevant piece of the build log for the reference
Step 6 (build-unified-tree) failure: build (failure)
...
8.079 [856/58/788] Building CXX object libc/src/termios/linux/CMakeFiles/libc.src.termios.linux.cfgetispeed.dir/cfgetispeed.cpp.o
8.081 [855/58/789] Building CXX object libc/src/sys/mman/linux/CMakeFiles/libc.src.sys.mman.linux.munlockall.dir/munlockall.cpp.o
8.084 [854/58/790] Building CXX object libc/src/termios/linux/CMakeFiles/libc.src.termios.linux.cfgetospeed.dir/cfgetospeed.cpp.o
8.087 [853/58/791] Building CXX object libc/src/sys/sendfile/linux/CMakeFiles/libc.src.sys.sendfile.linux.sendfile.dir/sendfile.cpp.o
8.087 [852/58/792] Building CXX object libc/src/sys/stat/linux/CMakeFiles/libc.src.sys.stat.linux.chmod.dir/chmod.cpp.o
8.089 [851/58/793] Building CXX object libc/src/sys/mman/linux/CMakeFiles/libc.src.sys.mman.linux.munlock.dir/munlock.cpp.o
8.094 [850/58/794] Building CXX object libc/src/sys/stat/linux/CMakeFiles/libc.src.sys.stat.linux.fchmod.dir/fchmod.cpp.o
8.099 [849/58/795] Building CXX object libc/src/sys/resource/linux/CMakeFiles/libc.src.sys.resource.linux.setrlimit.dir/setrlimit.cpp.o
8.106 [848/58/796] Building CXX object libc/src/termios/linux/CMakeFiles/libc.src.termios.linux.cfsetispeed.dir/cfsetispeed.cpp.o
8.119 [847/58/797] Building CXX object libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o
FAILED: libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o 
/build/buildbot/premerge-monolithic-linux/build/./bin/clang++ --target=x86_64-unknown-linux-gnu -DLIBC_NAMESPACE=__llvm_libc_21_0_0_git -I/build/buildbot/premerge-monolithic-linux/llvm-project/libc -isystem /build/buildbot/premerge-monolithic-linux/build/runtimes/runtimes-bins/libc/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_ADD_NULL_CHECKS -fpie -ffixed-point -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -UNDEBUG -std=gnu++17 -MD -MT libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -MF libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o.d -o libc/src/sys/ioctl/linux/CMakeFiles/libc.src.sys.ioctl.linux.ioctl.dir/ioctl.cpp.o -c /build/buildbot/premerge-monolithic-linux/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp
/build/buildbot/premerge-monolithic-linux/llvm-project/libc/src/sys/ioctl/linux/ioctl.cpp:13:10: fatal error: 'src/errno/libc_errno.h' file not found
   13 | #include "src/errno/libc_errno.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
8.120 [847/57/798] Building CXX object libc/src/sys/stat/linux/CMakeFiles/libc.src.sys.stat.linux.mkdirat.dir/mkdirat.cpp.o
8.127 [847/56/799] Building CXX object libc/src/sys/uio/linux/CMakeFiles/libc.src.sys.uio.linux.writev.dir/writev.cpp.o
8.133 [847/55/800] Building CXX object libc/src/sys/stat/linux/CMakeFiles/libc.src.sys.stat.linux.fchmodat.dir/fchmodat.cpp.o
8.134 [847/54/801] Building CXX object libc/src/termios/linux/CMakeFiles/libc.src.termios.linux.cfsetospeed.dir/cfsetospeed.cpp.o
8.136 [847/53/802] Building CXX object libc/src/sys/statvfs/linux/CMakeFiles/libc.src.sys.statvfs.linux.fstatvfs.dir/fstatvfs.cpp.o
8.137 [847/52/803] Building CXX object libc/src/sys/utsname/linux/CMakeFiles/libc.src.sys.utsname.linux.uname.dir/uname.cpp.o
8.137 [847/51/804] Building CXX object libc/src/sys/time/linux/CMakeFiles/libc.src.sys.time.linux.getitimer.dir/getitimer.cpp.o
8.137 [847/50/805] Building CXX object libc/src/sys/prctl/linux/CMakeFiles/libc.src.sys.prctl.linux.prctl.dir/prctl.cpp.o
8.137 [847/49/806] Building CXX object libc/src/sys/time/linux/CMakeFiles/libc.src.sys.time.linux.setitimer.dir/setitimer.cpp.o
8.137 [847/48/807] Building CXX object libc/src/sys/stat/linux/CMakeFiles/libc.src.sys.stat.linux.mkdir.dir/mkdir.cpp.o
8.138 [847/47/808] Building CXX object libc/src/sys/stat/linux/CMakeFiles/libc.src.sys.stat.linux.stat.dir/stat.cpp.o
8.138 [847/46/809] Building CXX object libc/src/sys/time/linux/CMakeFiles/libc.src.sys.time.linux.utimes.dir/utimes.cpp.o
8.141 [847/45/810] Building CXX object libc/src/sys/uio/linux/CMakeFiles/libc.src.sys.uio.linux.readv.dir/readv.cpp.o
8.141 [847/44/811] Building CXX object libc/src/sys/stat/linux/CMakeFiles/libc.src.sys.stat.linux.lstat.dir/lstat.cpp.o
8.143 [847/43/812] Building CXX object libc/src/sys/stat/linux/CMakeFiles/libc.src.sys.stat.linux.fstat.dir/fstat.cpp.o
8.145 [847/42/813] Building CXX object libc/src/sys/wait/linux/CMakeFiles/libc.src.sys.wait.linux.wait4.dir/wait4.cpp.o
8.145 [847/41/814] Building CXX object libc/src/sys/statvfs/linux/CMakeFiles/libc.src.sys.statvfs.linux.statvfs.dir/statvfs.cpp.o
8.154 [847/40/815] Building CXX object libc/src/string/CMakeFiles/libc.src.string.memset_explicit.dir/memset_explicit.cpp.o
8.163 [847/39/816] Building CXX object libc/src/sys/wait/linux/CMakeFiles/libc.src.sys.wait.linux.waitpid.dir/waitpid.cpp.o
8.178 [847/38/817] Building CXX object libc/src/termios/linux/CMakeFiles/libc.src.termios.linux.tcflush.dir/tcflush.cpp.o
8.179 [847/37/818] Building CXX object libc/src/termios/linux/CMakeFiles/libc.src.termios.linux.tcsendbreak.dir/tcsendbreak.cpp.o
8.202 [847/36/819] Building CXX object libc/src/sys/wait/linux/CMakeFiles/libc.src.sys.wait.linux.wait.dir/wait.cpp.o
8.208 [847/35/820] Building CXX object libc/src/termios/linux/CMakeFiles/libc.src.termios.linux.tcsetattr.dir/tcsetattr.cpp.o
8.211 [847/34/821] Building CXX object libc/src/string/CMakeFiles/libc.src.string.memmove.dir/memmove.cpp.o
8.211 [847/33/822] Building CXX object libc/src/string/CMakeFiles/libc.src.string.memset.dir/memset.cpp.o
8.211 [847/32/823] Building CXX object libc/src/strings/CMakeFiles/libc.src.strings.bcopy.dir/bcopy.cpp.o
8.211 [847/31/824] Building CXX object libc/src/termios/linux/CMakeFiles/libc.src.termios.linux.tcgetsid.dir/tcgetsid.cpp.o
8.212 [847/30/825] Building CXX object libc/src/termios/linux/CMakeFiles/libc.src.termios.linux.tcdrain.dir/tcdrain.cpp.o
8.213 [847/29/826] Building CXX object libc/src/termios/linux/CMakeFiles/libc.src.termios.linux.tcflow.dir/tcflow.cpp.o
8.214 [847/28/827] Building CXX object libc/src/string/CMakeFiles/libc.src.string.mempcpy.dir/mempcpy.cpp.o
8.219 [847/27/828] Building CXX object libc/src/string/CMakeFiles/libc.src.string.strndup.dir/strndup.cpp.o
8.221 [847/26/829] Building CXX object libc/src/termios/linux/CMakeFiles/libc.src.termios.linux.tcgetattr.dir/tcgetattr.cpp.o
8.222 [847/25/830] Building CXX object libc/src/strings/CMakeFiles/libc.src.strings.bzero.dir/bzero.cpp.o

tomtor pushed a commit to tomtor/llvm-project that referenced this pull request Jun 14, 2025
Closes llvm#85275
Closes llvm#90317
Updates llvm#97191

---------

Co-authored-by: Joseph Huber <huberjn@outlook.com>
Co-authored-by: Michael Jones <michaelrj@google.com>
tomtor pushed a commit to tomtor/llvm-project that referenced this pull request Jun 14, 2025
Since errno was moved in
llvm#143187 the code including it
in llvm#141393 was rendered
incorrect. This patch fixes the include and the cmake depends.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[libc] implement ioctl
6 participants