Gavin Hayes
ae26246a77
zipos execve: move implementation out of execve-sysv into execve.c
2023-02-24 11:19:01 -05:00
Gavin Hayes
2c9e197843
clang-format
2023-02-24 10:48:00 -05:00
Gavin Hayes
8b5a6ad642
fexecve: fix running APEs with FD_CLOEXEC, avoid double fd to memfd conversion
2023-02-24 10:43:28 -05:00
Gavin Hayes
34133019bc
zipos fexecve: minor cleanup
2023-02-23 21:12:39 -05:00
Gavin Hayes
16e380d7e0
reimplement zipos fexecve/execve ontop of APE fexecve implementation
2023-02-23 21:06:22 -05:00
Gavin Hayes
00c4485a1d
zipos sysv execve add non-resource leaking method of running APE proof of concept
2023-02-23 19:08:02 -05:00
Gavin Hayes
c235065608
sysv execve remove resource-leaking zipos APE proof of concept
2023-02-23 19:04:39 -05:00
Gavin Hayes
20b75864e6
sysv execve zipos fix APE if APE loader is installed
2023-02-23 19:04:39 -05:00
Gavin Hayes
385dca4ec0
sysv execve add zipos support. Add Linux zipos APE execve by leaking fd
2023-02-23 19:04:39 -05:00
Gavin Hayes
a2b0542349
zipos_to_fd - remove unncessary lseeks, add _unassert, fix MODE=dbg
2023-02-23 18:57:08 -05:00
Gavin Hayes
df713afa90
zipos_to_fd: support FreeBSD, use mmap instead of read write loop, add tests
2023-02-23 18:52:14 -05:00
Gavin Hayes
4fd1fae5ca
zipos fexecve now works
2023-02-23 18:46:06 -05:00
Justine Tunney
c395d16230
Upgrade embedded blink to 0.9.2
2023-02-23 12:25:01 -08:00
Justine Tunney
1011db793f
Bump embedded blink binary to 0.9.0
...
This is an official tagged version. The 1.1 version used earlier was
informal. Formal versions will always have major.minor.patch going
forward. See https://github.com/jart/blink/tags 1.0.0 coming soon.
2023-02-23 09:57:08 -08:00
Michael Ford
ca88fc34c3
doc: remove "everything everything" from ParseUrl doc ( #704 )
...
Closes : #702 .
2023-02-23 09:34:48 -08:00
Justine Tunney
ad97d7b9db
Disable Python test_sys
2023-02-23 08:56:31 -08:00
Justine Tunney
18a24935cc
Fix Python stack overflow checking in MODE=dbg
2023-02-23 08:13:33 -08:00
Justine Tunney
8b69acc1cc
Make mkdeps more helpful when files are missing
2023-02-23 08:11:08 -08:00
Justine Tunney
0468ca02fe
Support building APE binaries greater than 30mb
2023-02-23 08:10:43 -08:00
Justine Tunney
7355499a6a
Remove a misplaced include
2023-02-23 08:10:38 -08:00
Justine Tunney
1208ac9f10
Add some POSIX feature definitions
...
This helps Python configure itself. We should focus more on vetting
these to make 100% sure they're accurate to define.
2023-02-23 08:09:34 -08:00
Justine Tunney
298ba74a45
Make POSIX semaphores always process shared
...
Python triggered the undefined behavior previously since it appears to
be posting to a semaphore owned by a different process that wasn't set
to process shared mode. The performance loss to process shared futexes
is so low and semaphores are generally used for this purpose, so it'll
be much simpler to simply not impose undefined behavior here.
2023-02-23 08:07:54 -08:00
Justine Tunney
b15f9eb58f
Improve Python's threading story
...
Python threads are now generally working, however some parts of Python's
regression tests for threads are flaky. This is possibly due to needing
more locking primitives in Cosmo's IO system call wrappers, e.g. close.
make o//third_party/python/Lib/test/test_threading.py.runs
See #747
2023-02-23 06:55:54 -08:00
ahgamut
60eb34509b
quick addition of cosmo pthreads to python.com
...
- enable WITH_THREAD and _POSIX_THREADS
- add headers everywhere
- breaks only two tests (faulthandler and signal)
- disabled terminal completion because it causes segfaults for some
reason (probably could not get the current thread)
2023-02-23 06:55:17 -08:00
Justine Tunney
a808b3e738
Serialize ZipOS handle IO across threads
2023-02-23 06:55:10 -08:00
Justine Tunney
0f1ead8943
Fix select() on Linux
...
This fixes a bug where the caller's timeval will be clobbered on Linux.
The Kernel ABI *always* modifies the timeout argument but POSIX says it
should be a const parameter. The wrapper now handles the difference and
sys_select() may be used if obtaining the remainder on Linux is needed.
2023-02-23 06:55:05 -08:00
Justine Tunney
dfabcd84c1
Fix sysinfo()
...
The system call wrapper was wrongfully reinterpreting kernel data. The
examples/sysinfo.c program is now updated to show how to correctly use
what's returned.
2023-02-23 06:54:58 -08:00
Justine Tunney
71d955be1d
Add blog link for access() impl inspiration
2023-02-23 06:54:53 -08:00
James Hulce
e4ee1da652
Fix filenames in help.txt ( #722 )
...
Many functions incorrectly direct users to see a .c file, when they should be .S
2023-02-22 19:00:49 -08:00
Gavin Hayes
ff9c15f48a
Add APE fexecve() support ( #733 )
2023-02-22 18:58:23 -08:00
Gavin Hayes
b275e664ec
Make ZipOS mmap safer ( #735 )
...
- It now runs entirely under __mmi_lock
- Hide implementation strace
2023-02-22 18:57:36 -08:00
Paul Kulchenko
e323527ffa
Remove slowloris handling from Redbean ( #737 )
...
It's been superseded by token bucket processing, does not take time
into considerations (only the number of fragments), and affects file
uploads that may require a large number of reads.
2023-02-22 18:56:02 -08:00
Joshua Wierenga
08fef9b277
Fix nt path format check ( #744 )
2023-02-22 18:42:13 -08:00
Gavin Hayes
94dcf81954
Add glob to cocmd ( #740 )
2023-02-21 10:31:04 -08:00
Justine Tunney
2b6261a52d
Make some system call fixes
...
- Fix minor ABI issue with SIOCGIFCONF
- Fix ABI translation issues with statfs() on BSDs
- Fix SQLite angled header line
2023-02-12 22:16:34 -08:00
Justine Tunney
0eb621f75e
Remove non-JIT'd blink builds for now
2023-02-12 22:14:16 -08:00
Justine Tunney
9634227181
Polyfill Linux unlink() EISDIR on POSIX platforms
2023-02-05 16:50:11 -08:00
Justine Tunney
9fce2751c8
Remove problematic test
2023-02-05 16:50:04 -08:00
Justine Tunney
49c1dea03b
Add msync_test
2023-02-05 16:49:52 -08:00
Justine Tunney
4b8874ceb9
Make some simple fixes
2023-02-03 02:09:15 -08:00
Justine Tunney
cf19e3e46a
Fix SO_LINGER on Apple
2023-02-02 20:05:37 -08:00
Justine Tunney
1429a7b3ef
Fix bug in ASAN reporting
2023-02-02 02:28:58 -08:00
Justine Tunney
7486a2cd51
Perform minor cleanups
2023-02-02 02:28:58 -08:00
Gavin Hayes
fd0da9c0df
Implement zipos mmap ( #725 )
2023-02-02 02:28:50 -08:00
Paul Kulchenko
6d36584ff2
Redbean lsqlite config addition ( #724 )
...
* Fix mislabeled constant in redbean SQLite code
* Simplify callback handling in redbean SQLite
* Add config options to redbean SQLite
* Update redbean SQLite API to return current error callback
2023-01-29 19:37:19 -08:00
James Hulce
f422edaf15
FIx link in gensvg demo ( #723 )
...
Code link in the gensvg demo is broken, fix that
2023-01-28 09:12:13 -08:00
Justine Tunney
1473eafd1a
Fix the build and introduce some APIs
...
The tcgetwinsize() and tcsetwinsize() APIs are now available. The
printargs.com example also now displays the baud rate.
2023-01-20 09:25:45 -08:00
Justine Tunney
cac86197cb
Add fix for Blink detection
2023-01-19 09:12:49 -08:00
Justine Tunney
006c44ff5d
Update tests and CPU detection for Blink
2023-01-18 00:56:09 -08:00
Justine Tunney
be3e109309
Fix build break
2023-01-08 15:35:08 -08:00