[all-commits] [llvm/llvm-project] 06a291: [libc] Implement pthread_attr_[gs]etscope (#222956)

Pavel Labath via All-commits all-commits at lists.llvm.org
Fri Sep 11 09:03:37 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 06a2917904110ac4cd5ecaab59355ee8bbf54501
      https://github.com/llvm/llvm-project/commit/06a2917904110ac4cd5ecaab59355ee8bbf54501
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-09-11 (Fri, 11 Sep 2026)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/include/llvm-libc-macros/pthread-macros.h
    M libc/include/pthread.yaml
    M libc/src/pthread/CMakeLists.txt
    A libc/src/pthread/pthread_attr_getscope.cpp
    A libc/src/pthread/pthread_attr_getscope.h
    A libc/src/pthread/pthread_attr_setscope.cpp
    A libc/src/pthread/pthread_attr_setscope.h
    M libc/test/src/pthread/CMakeLists.txt
    M libc/test/src/pthread/pthread_attr_test.cpp

  Log Message:
  -----------
  [libc] Implement pthread_attr_[gs]etscope (#222956)

This patch implements pthread_attr_getscope and pthread_attr_setscope.

Same as other libraries, we only support the system contention scope
(PTHREAD_SCOPE_SYSTEM). Process contention scope (PTHREAD_SCOPE_PROCESS)
is not supported, and would basically require a userspace N:M threading
implementation. Since this value cannot be checked in the kernel, I
reject it directly during the attribute set operation, and don't even
bother storing it in the attribute object.

Assisted-by: Gemini



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list