freebsd-dev/lib
Dmitry Chagin c21b080f3d cpuset: Fix sched_[g|s]etaffinity() for better compatibility with Linux.
Under Linux to sched_[g|s]etaffinity() functions the value returned from a call
to gettid(2) (thread id) can be passed in the argument pid. Specifying pid as 0
will set the attribute for the calling thread, and passing the value returned
from a call to getpid(2) (process id) will set the attribute for the main thread
of the thread group.

Native cpuset(2) family of system calls has "which" argument to determine how
the value of id argument is interpreted, i.e., CPU_WHICH_TID is used to pass
a thread id and CPU_WHICH_PID - to pass a process id.

For now native sched_[g|s]etaffinity() implementation is wrong as uses "which"
CPU_WHICH_PID to pass both (process and thread id) to the kernel. To fix this
adding a new "which" CPU_WHICH_TIDPID intended to handle both id's.

Reviewed by:		kib
Differential Revision:	https://reviews.freebsd.org/D38209
MFC after:		1 week
2023-01-29 16:17:33 +03:00
..
atf Retire WITHOUT_CXX option 2023-01-26 21:13:16 -05:00
clang Revert "Avoid using TARGET_ARCH in llvm.build.mk" 2022-10-13 22:04:47 -05:00
csu csu: Add missing GNU-stack annotations to note object files. 2022-11-18 12:22:23 -08:00
flua flua: Fix a typo in a source code comment 2022-09-15 10:25:54 +02:00
geom pkgbase: Put geom utilities in their own package 2022-10-26 19:46:28 +02:00
googletest googletest: remove unused auto_ptr warning suppression 2022-11-30 19:34:52 -05:00
lib9p lib9p: fix building on systems without capser 2021-01-04 20:48:48 +01:00
lib80211 lib80211: Start adding 11ac ETSI bits to regdomain.xml 2021-03-18 11:09:10 +00:00
libalias Rename NO_WERROR -> MK_WERROR=no 2021-01-07 09:31:03 +00:00
libarchive libarchive: merge from vendor branch 2022-12-13 20:21:13 +01:00
libauditd libauditd: make it a PRIVATELIB 2020-04-19 02:20:39 +00:00
libbe zfs: merge openzfs/zfs@9cd71c860 (master) 2023-01-25 19:50:29 +01:00
libbearssl Revert that! 2020-07-19 23:56:19 +00:00
libbegemot libbegemot: Disable -Wuse-after-free. 2022-10-03 16:10:43 -07:00
libblacklist Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libblocksruntime Move all sources from the llvm project into contrib/llvm-project. 2019-12-20 19:53:05 +00:00
libbluetooth bluetooth: Remove one more h4 reference. 2021-09-29 22:02:25 -06:00
libbsddialog contrib/bsddialog: Import version 0.4 2022-09-25 15:09:16 +02:00
libbsdstat Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libbsm libbsm: fix some MLINKS 2020-04-19 02:18:40 +00:00
libbsnmp pkgbase: Put the mibs and defs in the bnsmp package 2021-06-19 17:50:03 +02:00
libbz2 Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libc cpuset: Fix sched_[g|s]etaffinity() for better compatibility with Linux. 2023-01-29 16:17:33 +03:00
libc_nonshared libc_nonshared: Move to clibs package 2022-11-01 10:17:07 +00:00
libc++ Apply libc++ fix for <ranges> not compiling at all 2022-05-14 13:46:39 +02:00
libc++experimental Merge llvm-project release/13.x llvmorg-13.0.0-rc1-97-g23ba3732246a 2021-11-13 21:42:03 +01:00
libcalendar Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libcam cam_get_device: resolve path links before parsing device name 2022-01-26 11:25:31 +02:00
libcapsicum Add missing FreeBSD functions to -legacy when building on macOS/Linux 2020-08-25 13:23:31 +00:00
libcasper libcasper.3: document cap_init's single-threaded program requirement 2023-01-10 20:53:30 -07:00
libcbor Add libcbor to the build 2021-10-15 15:10:24 -04:00
libclang_rt libclang_rt: Trim a few more MIPSisms. 2022-06-30 10:02:37 -07:00
libcom_err pkgbase: Create a FreeBSD-kerberos package 2021-09-07 10:23:14 +02:00
libcompat
libcompiler_rt Build compiler-rt against libunwind, not libcxxrt 2022-03-09 22:23:35 +01:00
libcrypt libcrypt: Drop inclusion of libutil.h 2021-12-07 00:24:19 +00:00
libcuse cuse(3): Make some clarifications in the manual page. 2022-07-20 10:41:11 +02:00
libcxxrt Sort SRCS in libcxxrt's Makefile, and use += to list sources 2022-01-22 21:08:55 +01:00
libdevctl libdevctl: Add devctl_getpath 2022-03-01 08:06:41 -07:00
libdevdctl libdevdctl: update deprecated deprecation warning comment 2022-12-04 10:17:37 -05:00
libdevinfo pkgbase: Put devmatch in its own package 2022-10-26 19:46:38 +02:00
libdevstat Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libdl libc: include rtld.h into static implementations of rtld interface 2021-04-09 23:46:24 +03:00
libdpv Indicate the port where the referenced man pages come from. 2022-08-16 20:57:30 +02:00
libdwarf libdwarf: Add a weak uncompress() symbol 2021-12-13 18:47:15 -05:00
libedit libedit: Disable -Wuse-after-free for chartype.c. 2022-10-03 16:10:43 -07:00
libefivar libefivar: Fix a buffer overread. 2022-10-03 16:10:44 -07:00
libelf libelf: Link gelf_getchdr.3 to the build 2021-11-29 13:57:24 -05:00
libelftc Update ELF Tool Chain to upstream r3769 2019-12-05 13:20:15 +00:00
libevent1 rename in-tree libevent v1 to libevent1 2020-05-28 22:05:50 +00:00
libexecinfo Move all sources from the llvm project into contrib/llvm-project. 2019-12-20 19:53:05 +00:00
libexpat MFV: expat 2.5.0 2022-11-17 22:15:00 -08:00
libfetch libfetch: Pass a zeroed digest to DigestCalcResponse. 2022-11-15 19:18:58 -08:00
libfido2 Add libfido2 to the build 2021-10-22 19:57:57 -04:00
libfigpar Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libgcc_eh Merge llvm-project release/14.x llvmorg-14-init-18315-g190be5457c90 2022-05-14 13:45:25 +02:00
libgcc_s Export _Unwind_Complete and _Unwind_VRS_Pop from arm's libgcc_s 2022-04-27 11:04:10 +02:00
libgeom Reference correct section for free(3). 2022-09-17 13:12:44 +02:00
libgpio Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libgssapi pkgbase: split kerberos binaries and libs 2022-08-03 11:02:28 +01:00
libiconv_modules libiconv VIQR: Fix a use after free. 2022-10-03 16:10:43 -07:00
libifconfig libifconfig: Correct some typos in source code comments 2022-09-04 12:53:58 +02:00
libipsec ipsec: add support for CHACHA20POLY1305 2022-11-02 14:19:04 +01:00
libipt Update Intel Processor Trace decoder library. 2019-10-10 12:46:34 +00:00
libiscsiutil libiscsiutil: Fix a typo in a source code comment 2023-01-11 11:52:55 +01:00
libjail libjail: Handle an error from reallocarray() when trimming the buffer. 2020-01-07 21:44:27 +00:00
libkiconv libkiconv: address memory leak in not-found cases 2021-04-22 19:32:34 -04:00
libkvm kvm_close(3): Check kd->sparse_map != NULL before munmap 2022-10-16 16:49:16 +00:00
libldns ldns: Disable -Warray-parameter warnings from GCC 12 on sha2.c. 2022-09-28 14:02:30 -07:00
liblua lua: reduce diffs between luaconf.h copies 2023-01-26 12:38:19 -05:00
liblutok Explicitly set CXXSTD to c++11 for old C++ code using std::auto_ptr<>. 2022-12-04 16:25:21 -08:00
liblzma Disable sandboxing when building with WITHOUT_CAPSICUM. 2023-01-28 10:53:47 -08:00
libmagic file: upgrade to 5.43. 2022-09-24 19:16:39 -07:00
libmd src.conf: Introduce WITHOUT_MACHDEP knob. 2022-09-09 09:54:28 +03:00
libmemstat sys/bitset.h: reduce visibility of BIT_* macros 2021-12-05 23:00:25 +01:00
libmilter Add -DSTARTTLS CFLAG in order to enable DANE in sendmail builds 2023-01-15 21:24:38 +00:00
libmixer mixer(3): Add HEADNAME to TAILQ_HEAD declarations in man page 2023-01-24 09:10:49 -05:00
libmp Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libmt mt(3): Fix a typo in the manual page 2022-04-06 18:41:08 +02:00
libnetbsd libnetbsd: Fix a typo in a source code comment 2022-04-02 14:53:56 +02:00
libnetgraph Retire synchronous PPP kernel driver sppp(4). 2021-10-22 11:41:36 -07:00
libnetmap libnetmap: reset errno in nmreq_register_decode() 2021-04-02 14:31:57 +00:00
libngatm Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libnv libnv: bump library version 2022-07-22 00:23:08 +02:00
libomp Merge llvm-project release/14.x llvmorg-14-init-18315-g190be5457c90 2022-05-14 13:45:25 +02:00
libopenbsd Only set WARNS if not defined 2020-09-11 13:28:37 +00:00
libopencsd Update opencsd to 0.14.2 2020-06-17 10:42:20 +00:00
libpam pam.d: install hard link with same mode as target 2022-11-24 08:14:44 -05:00
libpathconv libpathconv: bump man page dates 2022-08-09 10:05:31 +02:00
libpcap MFV r353141 (by phillip): 2019-12-21 21:01:03 +00:00
libpe
libpfctl pf: bridge-to 2022-11-02 15:45:23 +01:00
libpjdlog pkgbase: Create a FreeBSD-utilities package and make it the default one 2019-09-05 14:15:47 +00:00
libpmc Refresh CPU types and classes from sys/sys/pmc.h. 2023-01-18 21:50:49 +01:00
libpmcstat libpmcstat: Fix a few ARM-specific issues with function symbols. 2022-03-10 15:39:53 -08:00
libproc Retire WITHOUT_CXX option 2023-01-26 21:13:16 -05:00
libprocstat libprocstat: forward declare struct kinfo_proc 2022-08-26 23:20:32 +01:00
libradius libradius: fix WITHOUT_OPENSSL build 2021-10-28 17:05:53 -04:00
libregex pkgbase: Put more binaries/lib in runtime 2021-12-21 10:17:27 +01:00
librpcsec_gss Correct a typo in man page references: rpcset_gss -> rpcsec_gss. 2022-09-16 22:38:42 +02:00
librpcsvc pkgbase: Put more binaries/lib in runtime 2021-12-21 10:17:27 +01:00
librss PCBGROUP.9: remove obsolete man page 2023-01-27 18:01:47 -04:00
librt Fix aio_readv(2), aio_writev(2) with SIGEV_THREAD. 2021-08-22 23:49:23 +12:00
librtld_db librtld_db: Handle shlibs with discontiguous mappings. 2021-12-03 11:07:30 -08:00
libsbuf Do a sweep and remove most WARNS=6 settings 2020-10-01 01:10:51 +00:00
libsdp Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libsecureboot lib/libsecureboot: Fix some typos 2022-11-11 10:38:39 -05:00
libsm Update for new library files in sendmail 8.17.1 2023-01-15 21:23:27 +00:00
libsmb
libsmdb Merge sendmail 8.16.1 to HEAD: See contrib/sendmail/RELEASE_NOTES for details 2020-07-15 18:28:54 +00:00
libsmutil Add -DSTARTTLS CFLAG in order to enable DANE in sendmail builds 2023-01-15 21:24:38 +00:00
libsqlite3 [PowerPC64LE] Pass our byte order to the sqlite3 build. 2020-09-23 02:17:44 +00:00
libssp libssp: don't compile with -fstack-protector* 2020-03-14 15:15:27 +00:00
libssp_nonshared Provide libssp based on libc 2020-01-04 20:19:25 +00:00
libstats Make use of the stats(3) framework in the TCP stack. 2019-12-02 20:58:04 +00:00
libstdbuf
libstdthreads Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libsysdecode libsysdecode: Match socket option names containing underscores 2022-11-02 13:46:24 -04:00
libtacplus libtacplus: Remove bogus srandomdev+random 2019-12-13 05:11:34 +00:00
libtelnet
libthr libthr: Trim trailing whitespaces in pthread_attr_affinity. 2023-01-29 15:38:04 +03:00
libthread_db mips: Remove thread_db support 2021-12-31 00:14:53 -07:00
libucl Only set WARNS if not defined 2020-09-11 13:28:37 +00:00
libufs Fix for tunefs(8) unable to add a UFS/FFS soft update journal. 2022-11-12 15:37:27 -08:00
libugidfw Deduplicate fsid comparisons 2020-05-21 01:55:35 +00:00
libulog Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libunbound unbound: Reapply Vendor import 1.17.0 2022-10-16 14:08:33 -07:00
libusb libusb(3): Implement libusb_interrupt_event_handler() by exposing existing function. 2022-10-02 17:32:59 +02:00
libusbhid usbhid(3): Fix a typo in the manual page 2022-06-04 19:54:25 +02:00
libutil Allow a comma-separated list in login class capabilities, 2023-01-14 10:48:29 -08:00
libveriexec Do not claim libbearssl et al are INTERNALLIB 2020-04-01 05:45:12 +00:00
libvgl Update Makefile.depend files 2019-12-11 17:37:53 +00:00
libvmmapi vmm: Use struct vcpu in the instruction emulation code. 2022-11-18 10:25:37 -08:00
libwrap pkgbase: Put libwrap in FreeBSD-tcpd package 2022-10-26 19:46:32 +02:00
libxo add blank line between variables (testing git commit) 2021-08-04 16:56:55 -04:00
liby
libypclnt pkgbase: Put more binaries/lib in runtime 2021-12-21 10:17:27 +01:00
libz Install working pkgconfig .pc files for compat libraries 2022-08-11 23:18:34 +01:00
libzstd cppcheck: explicitly exclude kernel code from userspace checks 2022-05-10 10:20:55 -07:00
msun msun: correct comment 2022-09-19 21:40:07 +03:00
ncurses Install working pkgconfig .pc files for compat libraries 2022-08-11 23:18:34 +01:00
ofed libirdma: Drop clang-specific -ferror-limit. 2022-10-03 16:10:42 -07:00
tests
Makefile Retire WITHOUT_CXX option 2023-01-26 21:13:16 -05:00
Makefile.inc build: provide a default WARNS for all in-tree builds 2020-09-18 17:17:46 +00:00