cosmopolitan/libc/calls
Justine Tunney af7bd80430
Eliminate cyclic locks in runtime
This change introduces a new deadlock detector for Cosmo's POSIX threads
implementation. Error check mutexes will now track a DAG of nested locks
and report EDEADLK when a deadlock is theoretically possible. These will
occur rarely, but it's important for production hardening your code. You
don't even need to change your mutexes to use the POSIX error check mode
because `cosmocc -mdbg` will enable error checking on mutexes by default
globally. When cycles are found, an error message showing your demangled
symbols describing the strongly connected component are printed and then
the SIGTRAP is raised, which means you'll also get a backtrace if you're
using ShowCrashReports() too. This new error checker is so low-level and
so pure that it's able to verify the relationships of every libc runtime
lock, including those locks upon which the mutex implementation depends.
2024-12-16 22:25:12 -08:00
..
struct Eliminate cyclic locks in runtime 2024-12-16 22:25:12 -08:00
typedef Reduce header complexity 2023-11-28 14:39:42 -08:00
_ptsname.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
abort.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
access.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
assertfail.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
blockcancel.internal.h Reduce header complexity 2023-11-28 14:39:42 -08:00
BUILD.mk Ensure ^C gets printed to Windows console 2024-11-22 14:56:53 -08:00
cachestat.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
cachestat.h Reduce header complexity 2023-11-28 14:39:42 -08:00
calls.h Remove mkfifo() prototype 2024-07-29 07:42:54 -07:00
cfmakeraw.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
cfspeed.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
chdir-nt.c Remove exponential backoff from chdir() 2024-09-10 21:21:52 -07:00
chdir.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
checksignal.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
chmod.c Stop using .com extension in monorepo 2024-03-03 03:12:19 -08:00
chown.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
chroot.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
clktck.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
clock_getres.c Delve into clock rabbit hole 2024-09-04 01:32:46 -07:00
clock_nanosleep-nt.c Improve Windows sleep accuracy from 15ms to 15µs 2024-12-06 23:03:57 -08:00
clock_nanosleep-openbsd.c Delve into clock rabbit hole 2024-09-04 01:32:46 -07:00
clock_nanosleep-sys.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
clock_nanosleep-xnu.c Delve into clock rabbit hole 2024-09-04 01:32:46 -07:00
clock_nanosleep.c Improve Windows sleep accuracy from 15ms to 15µs 2024-12-06 23:03:57 -08:00
clock_settime.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
close-nt.c Fix bugs in poll(), select(), ppoll(), and pselect() 2024-09-02 00:29:52 -07:00
close.c Fix bugs in poll(), select(), ppoll(), and pselect() 2024-09-02 00:29:52 -07:00
close_range.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
closefrom.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
commandv.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
copy.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
copy_file_range.c Work around copy_file_range() bug in eCryptFs 2024-09-29 16:35:38 -07:00
cp.internal.h Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
CPU_AND.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
CPU_COUNT.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
CPU_COUNT_S.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
CPU_EQUAL.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
CPU_OR.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
CPU_XOR.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
CPU_ZERO.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
creat.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
createfileflags.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
createfileflags.internal.h Make improvements 2023-10-15 16:45:00 -07:00
createpipename.c Introduce interprocess signaling on Windows 2024-09-19 03:02:13 -07:00
dl_iterate_phdr.c Add <link.h> for absl 2023-12-08 20:04:10 -08:00
dup-nt.c Share file offset across execve() on Windows 2024-08-03 17:48:00 -07:00
dup.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
dup2.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
dup3-sysv.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
dup3.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
eaccess.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
euidaccess.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
faccessat-nt.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
faccessat.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
fadvise-nt.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
fadvise.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
fchdir-nt.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
fchdir.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
fchmod-nt.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
fchmod.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
fchmodat-linux.c Release Cosmopolitan v3.3 2024-02-20 13:27:59 -08:00
fchmodat-nt.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
fchmodat.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
fchown.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
fchownat.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
fcntl-nt.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
fcntl-sysv.c Delete ASAN 2024-06-22 05:45:49 -07:00
fcntl.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
fdatasync-nt.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
fdatasync.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
fdexists.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
fileexists.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
finddebugbinary.c Fix --ftrace 2024-08-29 23:51:05 -07:00
fixenotdir.c Make vim startup faster 2024-09-11 00:52:34 -07:00
fixupnewfd.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
flock-nt.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
flock.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
fstat-metal.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
fstat-nt.c Improve Windows mode bits 2024-09-22 16:51:57 -07:00
fstat-sysv.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
fstat.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
fstatat-nt.c Improve handling of weird reparse points 2024-09-02 19:05:48 -07:00
fstatat-sysv.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
fstatat.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
fstatfs-nt.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
fstatfs.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
fstatvfs.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
fsync-fake.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
fsync.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
ftok.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
ftruncate-nt.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
ftruncate.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
futimens.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
futimes.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
futimesat.c Implement proper time zone support 2024-05-04 23:06:37 -07:00
getcpu.c Make malloc scalable on all platforms 2024-08-15 23:32:53 -07:00
getcpucount.c Add sysctlbyname() for MacOS 2024-05-02 23:21:43 -07:00
getcwd.greg.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
getdomainname-linux.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
getdomainname.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
getdtablesize.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
getegid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
geteuid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
getgroups.c Make more fixups and quality assurance 2024-10-07 15:29:53 -07:00
gethostname-bsd.c Add sysctlbyname() for MacOS 2024-05-02 23:21:43 -07:00
gethostname-linux.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
gethostname-nt.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
gethostname.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
gethoststxtpath.c Fix bugs with DNS library on Windows 2024-01-03 17:39:57 -08:00
getloadavg-nt.c Eliminate cyclic locks in runtime 2024-12-16 22:25:12 -08:00
getloadavg.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
getntsyspath.S Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
getpgid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
getpgrp.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
getppid-nt.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
getppid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
getprocaddressmodule.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
getprogramexecutablename.greg.c Eliminate cyclic locks in runtime 2024-12-16 22:25:12 -08:00
getprotocolstxtpath.c Fix bugs with DNS library on Windows 2024-01-03 17:39:57 -08:00
getrandom-metal.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
getrandom.c Fix issues with previous commit 2024-09-10 01:59:46 -07:00
getresgid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
getresuid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
getrlimit.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
getservicestxtpath.c Fix bugs with DNS library on Windows 2024-01-03 17:39:57 -08:00
getsid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
getsystemdirectorypath.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
gettimeofday.c Implement proper time zone support 2024-05-04 23:06:37 -07:00
getuid-nt.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
getuid.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
grantpt.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
groups.internal.h Avoid linker conflicts on DescribeFoo symbols 2024-08-24 18:10:22 -07:00
internal.h Improve Windows sleep accuracy from 15ms to 15µs 2024-12-06 23:03:57 -08:00
ioctl.c Fix ioctl() and FIONREAD for sockets on Windows 2024-09-13 01:47:33 -07:00
ipc.h Add dontthrow attribute to most libc functions 2024-01-09 01:26:03 -08:00
isapemagic.c Share file offset across execve() on Windows 2024-08-03 17:48:00 -07:00
isatty-nt.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
isatty.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
ischardev.c Add /dev/(u)random on NT (#1163) 2024-05-03 07:59:51 -07:00
isdirectory-nt.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
isdirectory.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
isexecutable.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
islinux.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
islinuxmodern.c Upgrade to superconfigure z0.0.55 2024-09-15 22:29:49 -07:00
isptmaster.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
isqemu.c Make improvements 2024-01-29 16:31:58 -08:00
isregularfile-nt.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
isregularfile.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
issetugid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
issymlink-nt.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
issymlink.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
kemptyfd.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
kntsystemdirectory.S Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
kntwindowsdirectory.S Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
landlock.h Reduce header complexity 2023-11-28 14:39:42 -08:00
landlock_add_rule.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
landlock_create_ruleset.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
landlock_restrict_self.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
lchmod.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
lchown.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
link.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
linkat-nt.c Improve handling of weird reparse points 2024-09-02 19:05:48 -07:00
linkat.c Add missing ICANON features 2024-09-05 03:17:19 -07:00
lseek-nt.c Share file offset across execve() on Windows 2024-08-03 17:48:00 -07:00
lseek.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
lstat.c Add dontthrow attribute to most libc functions 2024-01-09 01:26:03 -08:00
lutimes.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
madvise-nt.c Make realloc() go 100x faster on Linux/NetBSD 2024-07-07 12:40:30 -07:00
madvise.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
major.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
makedev.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
makedev.h Fix makedev() prototype 2024-09-26 04:42:41 -07:00
makedirs.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
memfd_create.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
metaflock.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
metalfile.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
metalfile.internal.h Work towards zipos / open(argv[0]) on metal (#667) 2022-11-06 00:29:47 -07:00
metalfile_init.S Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
mincore.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
minor.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
mkdir.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
mkdirat-nt.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
mkdirat.c Add missing ICANON features 2024-09-05 03:17:19 -07:00
mkdtemp.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
mknod.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
mkntcmdline.c Support shebang on Windows 2024-05-20 22:11:42 -07:00
mkntenvblock.c Fix some static analysis issues 2024-07-27 09:16:54 -07:00
mkntpath.c Fix relative Windows path normalization (#1261) 2024-08-16 11:55:49 -07:00
mkntpathat.c Make vim startup faster 2024-09-11 00:52:34 -07:00
mkostemp.c Add dontthrow attribute to most libc functions 2024-01-09 01:26:03 -08:00
mkostemps.c Add dontthrow attribute to most libc functions 2024-01-09 01:26:03 -08:00
mkstemp.c Add dontthrow attribute to most libc functions 2024-01-09 01:26:03 -08:00
mkstemps.c Add dontthrow attribute to most libc functions 2024-01-09 01:26:03 -08:00
mktemp.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
mlock.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
mount.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
mount.h Reduce header complexity 2023-11-28 14:39:42 -08:00
mungentpath.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
munlock.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
nanosleep.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
netbsdtramp.S Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
nosync.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
ntaccesscheck.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
ntreturn.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
ntsetprivilege.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
ntspawn.c Fix shocking memory leak on Windows 2024-09-15 04:32:39 -07:00
open-nt.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
open.c Add dontthrow attribute to most libc functions 2024-01-09 01:26:03 -08:00
openat-metal.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
openat-sysv.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
openat.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
openatemp.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
openbsd.internal.h Reduce header complexity 2023-11-28 14:39:42 -08:00
openpty.c Delete ASAN 2024-06-22 05:45:49 -07:00
park.c Improve Windows sleep accuracy from 15ms to 15µs 2024-12-06 23:03:57 -08:00
parsepromises.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
pause-nt.c Improve Windows sleep accuracy from 15ms to 15µs 2024-12-06 23:03:57 -08:00
pause.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
perror.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
pipe-nt.c Make more fixups and quality assurance 2024-10-07 15:29:53 -07:00
pipe-sysv.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
pipe.c Release Cosmopolitan v3.6.0 2024-07-23 03:28:19 -07:00
pipe2-sysv.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
pipe2.c Release Cosmopolitan v3.6.0 2024-07-23 03:28:19 -07:00
pivot_root.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
pledge-linux.c Fix statx not being allowed on rpath/wpath pledges (#1291) 2024-09-13 14:31:29 -07:00
pledge.c Add crash proofing to ipv4.games server 2024-08-26 12:57:28 -07:00
pledge.h Reduce header complexity 2023-11-28 14:39:42 -08:00
pledge.internal.h Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
poll-metal.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
poll-nt.c Improve Windows sleep accuracy from 15ms to 15µs 2024-12-06 23:03:57 -08:00
poll-sysv.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
poll.c Introduce sigtimedwait() on Windows 2024-09-15 01:18:27 -07:00
posix_fadvise.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
posix_madvise.c Simplify memory manager 2024-07-05 05:47:15 -07:00
posix_openpt.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
ppoll.c Make more fixups and quality assurance 2024-10-07 15:29:53 -07:00
prctl.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
prctl.internal.h Reduce header complexity 2023-11-28 14:39:42 -08:00
pread.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
preadv.c Fix some static analysis issues 2024-07-27 09:16:54 -07:00
printfds.c Avoid linker conflicts on DescribeFoo symbols 2024-08-24 18:10:22 -07:00
program_executable_name_init.S Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
program_invocation_short_name.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
pselect.c Make more fixups and quality assurance 2024-10-07 15:29:53 -07:00
ptrace.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
ptsname.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
ptsname_r.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
pwrite.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
pwritev.c Fix some static analysis issues 2024-07-27 09:16:54 -07:00
raise.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
rdrand.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
rdrand_init.c Release Cosmopolitan v3.3 2024-02-20 13:27:59 -08:00
read-nt.c Ensure ^C gets printed to Windows console 2024-11-22 14:56:53 -08:00
read.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
readansi.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
readlink.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
readlinkat-nt.c Improve handling of weird reparse points 2024-09-02 19:05:48 -07:00
readlinkat.c Add missing ICANON features 2024-09-05 03:17:19 -07:00
readv-metal.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
readv-nt.c Add /dev/(u)random on NT (#1163) 2024-05-03 07:59:51 -07:00
readv-serial.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
readv.c Fix some static analysis issues 2024-07-27 09:16:54 -07:00
readwrite-nt.c Write more tests attempting to break windows 2024-09-22 01:21:10 -07:00
reboot.c Drop support for Windows 8 2024-05-29 19:37:47 -07:00
releasefd.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
remove.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
rename.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
renameat-nt.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
renameat.c Add missing ICANON features 2024-09-05 03:17:19 -07:00
restoretty.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
rmdir.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
rusage2linux.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
rusage_add.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
sched-sysv.internal.h Reduce header complexity 2023-11-28 14:39:42 -08:00
sched_get_priority_max.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
sched_get_priority_min.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
sched_getcpu.c Make malloc scalable on all platforms 2024-08-15 23:32:53 -07:00
sched_getparam.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
sched_getscheduler-netbsd.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
sched_getscheduler.c Remove __threaded variable 2024-07-28 23:43:30 -07:00
sched_rr_get_interval.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
sched_setparam.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
sched_setscheduler.c Remove __threaded variable 2024-07-28 23:43:30 -07:00
seccomp.c Avoid linker conflicts on DescribeFoo symbols 2024-08-24 18:10:22 -07:00
secure_getenv.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
sedebug.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
select-nt.c Make more fixups and quality assurance 2024-10-07 15:29:53 -07:00
select.c Make more fixups and quality assurance 2024-10-07 15:29:53 -07:00
setegid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
seteuid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
setfl.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
setfsgid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
setfsuid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
setgid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
setgroups.c Make more fixups and quality assurance 2024-10-07 15:29:53 -07:00
setpgid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
setpgrp.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
setregid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
setresgid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
setresuid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
setreuid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
setrlimit.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
setsid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
settimeofday.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
setuid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
shm_open.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
shm_path_np.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
shm_unlink.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
sig.internal.h Put more thought into new signaling code 2024-09-19 20:21:33 -07:00
sigaction.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
sigaltstack.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
sigcheck.c Write more tests for signal handling 2024-09-21 05:24:56 -07:00
sigenter-freebsd.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
sigenter-linux.c Favor siginfo_t over struct siginfo 2024-05-28 02:34:17 -07:00
sigenter-netbsd.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
sigenter-openbsd.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
sigenter-xnu.c Polyfill SA_RESETHAND on MacOS ARM64 2024-05-08 04:20:22 -07:00
sigignore.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
siginfo2cosmo.c Favor siginfo_t over struct siginfo 2024-05-28 02:34:17 -07:00
siginterrupt.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
signal.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
sigpending.c Introduce interprocess signaling on Windows 2024-09-19 03:02:13 -07:00
sigqueue.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
sigsuspend.c Improve Windows sleep accuracy from 15ms to 15µs 2024-12-06 23:03:57 -08:00
sigtimedwait-nt.c Clean up more code 2024-09-15 02:45:16 -07:00
sigtimedwait.c Introduce sigtimedwait() on Windows 2024-09-15 01:18:27 -07:00
sigtimedwait.h Reduce header complexity 2023-11-28 14:39:42 -08:00
sigtimedwait.internal.h Reduce header complexity 2023-11-28 14:39:42 -08:00
sigwait.c Introduce sigtimedwait() on Windows 2024-09-15 01:18:27 -07:00
sigwaitinfo.c Introduce sigtimedwait() on Windows 2024-09-15 01:18:27 -07:00
sleep.c Implement proper time zone support 2024-05-04 23:06:37 -07:00
splice.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
stat.c Add dontthrow attribute to most libc functions 2024-01-09 01:26:03 -08:00
stat2cosmo.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
state.internal.h Eliminate cyclic locks in runtime 2024-12-16 22:25:12 -08:00
statfs-nt.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
statfs.c Make some improvements of little consequence 2024-07-27 08:20:18 -07:00
statfs2cosmo.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
statfs2statvfs.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
statvfs.c Add dontthrow attribute to most libc functions 2024-01-09 01:26:03 -08:00
stime.c Implement proper time zone support 2024-05-04 23:06:37 -07:00
symlink.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
symlinkat-nt.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
symlinkat.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
sync-nt.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
sync.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
syncfs.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
sys_ptrace.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
syscall-nt.internal.h Fix bugs in poll(), select(), ppoll(), and pselect() 2024-09-02 00:29:52 -07:00
syscall-sysv.internal.h Make realloc() go 100x faster on Linux/NetBSD 2024-07-07 12:40:30 -07:00
syscall_support-nt.internal.h Introduce sigtimedwait() on Windows 2024-09-15 01:18:27 -07:00
syscall_support-sysv.internal.h Reduce header complexity 2023-11-28 14:39:42 -08:00
sysctl.c Add sysctlbyname() for MacOS 2024-05-02 23:21:43 -07:00
sysctlbyname.c Add sysctlbyname() for MacOS 2024-05-02 23:21:43 -07:00
sysctlnametomib.c Add sysctlbyname() for MacOS 2024-05-02 23:21:43 -07:00
sysdir.internal.h Use DNS implementation from Musl Libc 2023-12-28 23:04:35 -08:00
sysinfo-nt.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
sysinfo.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
tcdrain.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
tcflow.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
tcflush.c Introduce cosmocc flags -mdbg -mtiny -moptlinux 2024-07-26 05:10:25 -07:00
tcgetattr-nt.c Add missing ICANON features 2024-09-05 03:17:19 -07:00
tcgetattr.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
tcgetpgrp.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
tcgetsid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
tcgetwinsize-nt.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
tcgetwinsize.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
tcsendbreak.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
tcsetattr-nt.c Add missing ICANON features 2024-09-05 03:17:19 -07:00
tcsetattr.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
tcsetpgrp.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
tcsetsid.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
tcsetwinsize-nt.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
tcsetwinsize.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
termios.h Add dontthrow attribute to most libc functions 2024-01-09 01:26:03 -08:00
termios.internal.h Fix bugs in termios library and cleanup code 2023-06-14 19:30:52 -07:00
termios2host.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
time.c Delete ASAN 2024-06-22 05:45:49 -07:00
timespec_get.c Implement proper time zone support 2024-05-04 23:06:37 -07:00
timespec_getres.c Implement proper time zone support 2024-05-04 23:06:37 -07:00
timespec_mono.c Add missing ICANON features 2024-09-05 03:17:19 -07:00
timespec_real.c Delve into clock rabbit hole 2024-09-04 01:32:46 -07:00
timespec_sleep.c Delve into clock rabbit hole 2024-09-04 01:32:46 -07:00
timespec_sleep_until.c Delve into clock rabbit hole 2024-09-04 01:32:46 -07:00
timeval_real.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
tinyprint.c Fix some static analysis issues 2024-07-27 09:16:54 -07:00
tmpdir.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
tmpfd.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
touch.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
truncate-nt.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
truncate.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
ttydefaults.h Remove evil constants from cosmopolitan.h 2022-12-17 00:42:45 -08:00
ttyname.c Run clang-format (#1197) 2024-06-01 16:30:43 -04:00
ttyname_r.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
ucontext.h Fix some static analysis issues 2024-07-27 09:16:54 -07:00
umask.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
uname.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
unassert.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
unlink.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
unlinkat-nt.c Remove exponential backoff from chdir() 2024-09-10 21:21:52 -07:00
unlinkat.c Add missing ICANON features 2024-09-05 03:17:19 -07:00
unlockpt.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
unmount.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
unveil.c Add crash proofing to ipv4.games server 2024-08-26 12:57:28 -07:00
usleep.c Introduce example program for viewing BBS art 2024-10-13 17:43:39 -07:00
utime.c Implement proper time zone support 2024-05-04 23:06:37 -07:00
utimens.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
utimensat-nt.c Implement proper time zone support 2024-05-04 23:06:37 -07:00
utimensat-old.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
utimensat-sysv.c Implement proper time zone support 2024-05-04 23:06:37 -07:00
utimensat.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
utimes.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
weirdtypes.h Reduce header complexity 2023-11-28 14:39:42 -08:00
wifcontinued.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
wifsignaled.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
wifstopped.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
wincrash.internal.h Reduce header complexity 2023-11-28 14:39:42 -08:00
winexec.c Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
write-nt.c Make read() and write() signal handling atomic 2024-09-15 01:18:27 -07:00
write.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
writev-metal.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
writev-nt.c Add /dev/(u)random on NT (#1163) 2024-05-03 07:59:51 -07:00
writev-serial.c Get rid of .internal.h convention in LIBC_INTRIN 2024-07-19 19:38:00 -07:00
writev.c Fix some static analysis issues 2024-07-27 09:16:54 -07:00