Theodore Dubois
82ad92d010
Stub renameat2
...
Fixes #312
2019-02-12 14:54:27 -08:00
Theodore Dubois
33fbd2dfd1
Unbreak shebang argument passing
2019-02-09 09:43:16 -08:00
Theodore Dubois
c3217ca7d1
Revolutionize E2BIG
2019-02-07 23:42:30 -08:00
Theodore Dubois
eb6cd79745
Speed up copy-on-write and unmap operations
2019-02-04 20:15:55 -08:00
Theodore Dubois
93bc13d924
Fix tsan warnings
2019-02-04 18:53:42 -08:00
Theodore Dubois
d81c4c4539
Add stub for sync()
2019-02-03 22:44:05 -08:00
Theodore Dubois
8c5c694693
Fix execve with 256 arguments
2019-02-01 17:37:33 -08:00
Theodore Dubois
f784c6db2d
Prevent buffer overflow when debug logging a very long argument list
2019-02-01 17:30:47 -08:00
Theodore Dubois
7e4c9d45cb
Return 0 from wait with WNOHANG if child exists
2019-02-01 10:39:51 -08:00
Theodore Dubois
356cd0230f
Add missing newline on dump_stack output
2019-02-01 09:45:07 -08:00
Theodore Dubois
22b0b0e5f0
Load shared libraries with no interpreter into mmap region
2019-01-31 22:40:03 -08:00
Theodore Dubois
34c377c87d
Improve controlling tty reference counting
2019-01-31 17:57:12 -08:00
Theodore Dubois
74c5d7cec6
Create inode data owned by fds
2019-01-29 15:02:48 -08:00
Theodore Dubois
724d5f2202
Make it possible to sanely edit files through the file provider
2019-01-29 13:06:52 -08:00
Theodore Dubois
dc8b4b4aef
Autoincrement fake inodes, remove relationship with real inodes
2019-01-26 22:02:08 -08:00
Theodore Dubois
a916f874fd
Make FIONBIO take an argument
2019-01-26 17:39:45 -08:00
Theodore Dubois
2f8c0afcbf
Add sockrestart infrastructure
2019-01-26 17:39:22 -08:00
Theodore Dubois
452eef532d
Use malloc for syslog_read buffer
2019-01-24 20:12:36 -08:00
Theodore Dubois
db1ce07b42
Make FIONBIO work with real files
2019-01-24 10:59:07 -08:00
Theodore Dubois
63e1b90a3c
Send SIGCHLD when a child process stops
...
This fixes midnight commander hanging.
2019-01-23 17:30:30 -08:00
Theodore Dubois
141c201cf3
Use pthread_setname_np to make threads easier to identify in a debugger
2019-01-23 16:52:21 -08:00
Theodore Dubois
488b0c3967
Avoid locking pids_lock and tty->lock when sending signals
2019-01-22 12:55:37 -08:00
Theodore Dubois
4da246affb
Correctly handle termios of pseudoterminals
2019-01-22 12:49:04 -08:00
Theodore Dubois
d6ca8f99a0
Release files retained by poll
2019-01-21 12:21:00 -08:00
Theodore Dubois
088e7b727d
Implement ptys
...
Also a bunch of somewhat related changes, I was too lazy to break this into more than one commit
2019-01-21 12:20:43 -08:00
Theodore Dubois
21a2db30e5
Ignore flags argument to fchmodat, like the kernel does
2019-01-21 11:38:06 -08:00
Theodore Dubois
b4a24b0eb4
Stop ignoring -Winitializer-overrides
2019-01-13 17:30:08 -05:00
Theodore Dubois
cfc2017948
Fix out of bounds write in readlink
2019-01-12 16:49:24 -08:00
Theodore Dubois
0c788b79d9
Improve dump_stack output
2019-01-12 12:47:22 -08:00
Theodore Dubois
7a82537309
Revert "Use a read lock on pagetables while reading/writing user memory"
...
This reverts commit 230678d93e10f61ca205471ee230eab9a1877b9d.
It was hanging on Linux and I was too lazy to debug lol.
2019-01-11 15:04:54 -08:00
Theodore Dubois
f658d6335b
Limit the size of logged execve arguments
2019-01-11 16:58:35 -05:00
Theodore Dubois
ff83d8e267
Fix fd leaks on device nodes
2019-01-11 14:28:29 -05:00
Theodore Dubois
5aeb536d61
Copy all the fields of struct mm
2019-01-10 19:12:12 -05:00
Theodore Dubois
328fc5b4a4
Fix leak of exefile
2019-01-10 10:36:10 -05:00
Theodore Dubois
230678d93e
Use a read lock on pagetables while reading/writing user memory
2019-01-10 08:40:35 -05:00
Theodore Dubois
e5ca15aeb2
Make SIGKILL work on a stopped process
2019-01-08 09:24:46 -05:00
Theodore Dubois
842da480bf
Correctly handle spurious wakeups in wait4
2019-01-07 11:40:49 -08:00
Theodore Dubois
c14eca8ae7
Fix a couple of segfaults in midnight commander
2019-01-06 17:13:34 -08:00
Theodore Dubois
1265ff32c3
Fix zsh sometimes hanging in sigsuspend
2019-01-06 11:09:26 -08:00
Theodore Dubois
aed7f5fb38
Fix some thread sanitizer warnings
2019-01-06 09:02:31 -08:00
Theodore Dubois
d0d59ac376
Be less woke
2019-01-06 08:05:11 -08:00
Theodore Dubois
89d5b7f69a
Resolve -Wsign-compare
2019-01-05 18:11:16 -08:00
Theodore Dubois
1b22ddb9bd
Resolve -Wmissing-field-initializers
2019-01-05 17:29:11 -08:00
Theodore Dubois
a0ca767db6
Rewrite syslog buffer to use a generic fifo
...
Trivia: I wrote this ring buffer implementation in half an hour during a Google interview and it somehow works better than the old one which took me half a day.
2019-01-05 17:24:32 -08:00
Theodore Dubois
032a218a63
Mark unused function arguments
2019-01-05 17:18:54 -08:00
Theodore Dubois
b04f6f1b3b
Remove some unnecessary function arguments
2019-01-05 17:18:54 -08:00
Theodore Dubois
a0d2a12f3b
Implement /proc/pid/cmdline and /proc/pid/exe
2019-01-04 18:53:17 -08:00
Theodore Dubois
5cfec48854
Separate out some components of struct mem into struct mm
2019-01-04 15:17:37 -08:00
Theodore Dubois
13fb417337
Correctly handle NULL sigset in sigprocmask
2019-01-03 21:15:52 -08:00
Theodore Dubois
923571fe16
Start signal stack at bottom of alternate stack, not top
...
😀 🔫
2019-01-03 18:04:15 -08:00