| #
29a332bc |
| 20-Aug-2023 |
visa <visa@openbsd.org> |
Add syscall stub for kqueue1(2)
This rides previous libc minor bump.
Feedback and OK guenther@
|
| #
92ac745a |
| 12-Feb-2023 |
tb <tb@openbsd.org> |
bump major after syscall removal
|
| #
cef5a146 |
| 07-Jan-2023 |
guenther <guenther@openbsd.org> |
Add {get,set}thrname(2) for putting thread names in the kernel and exposed in a new field returned by sysctl(KERN_PROC). Update pthread_{get,set}_name_np(3) to use the syscalls. Show them, when set
Add {get,set}thrname(2) for putting thread names in the kernel and exposed in a new field returned by sysctl(KERN_PROC). Update pthread_{get,set}_name_np(3) to use the syscalls. Show them, when set, in ps -H and top -H output.
libc and libpthread minor bumps
ok mpi@, mvs@, deraadt@
show more ...
|
| #
cf58d2cc |
| 26-Oct-2022 |
kettenis <kettenis@openbsd.org> |
Add waitid(2) syscall stub.
Minor bump to both libc and libpthread: make sure you install a new kernel!
ok millert@, deraadt@
|
| #
4a324753 |
| 09-Sep-2022 |
mbuhl <mbuhl@openbsd.org> |
Add libc wrappers for the new sendmmsg and recvmmsg system calls. Feedback tb@, miod@, jca@ OK jca@
|
| #
29511769 |
| 04-Feb-2019 |
tedu <tedu@openbsd.org> |
add a pthread_get_name_np to match pthread_set_name_np. could be useful in ports. initial diff by David Carlier some time ago. ok jca
|
| #
54e4f6b9 |
| 11-Jan-2019 |
deraadt <deraadt@openbsd.org> |
mincore() is a relic from the past, exposing physical machine information about shared resources which no program should see. only a few pieces of software use it, generally poorly thought out. the
mincore() is a relic from the past, exposing physical machine information about shared resources which no program should see. only a few pieces of software use it, generally poorly thought out. they are being fixed, so mincore() can be deleted. ok guenther tedu jca sthen, others
show more ...
|
| #
a318b99d |
| 04-Nov-2017 |
jca <jca@openbsd.org> |
Revert recent changes to unbreak ports/net/samba
While it is not clear (to me) why that ports ends up with corrupted shared libs, reverting those changes fixes the issue and should allow us to close
Revert recent changes to unbreak ports/net/samba
While it is not clear (to me) why that ports ends up with corrupted shared libs, reverting those changes fixes the issue and should allow us to close p2k17 more smoothly.
Discussed with a bunch, ok ajacoutot@ guenther@
show more ...
|
| #
1047ef59 |
| 28-Oct-2017 |
guenther <guenther@openbsd.org> |
Change pthread_cleanup_{push,pop} to macros that store the cleanup info on the stack instead of mallocing the list and move the APIs from libpthread to libc so that they can be used inside libc.
Not
Change pthread_cleanup_{push,pop} to macros that store the cleanup info on the stack instead of mallocing the list and move the APIs from libpthread to libc so that they can be used inside libc.
Note: the standard was explicitly written to permit/support this "macro with unmatched brace" style and it's what basically everyone else already does. We xor the info with random cookies with a random magic to detect/trip-up overwrites.
Major bump to both libc and libpthread due to the API move.
ok mpi@
show more ...
|
| #
a5511fa9 |
| 05-Sep-2017 |
guenther <guenther@openbsd.org> |
Move mutex, condvar, and thread-specific data routes, pthread_once, and pthread_exit from libpthread to libc, along with low-level bits to support them. Major bump to both libc and libpthread.
Requ
Move mutex, condvar, and thread-specific data routes, pthread_once, and pthread_exit from libpthread to libc, along with low-level bits to support them. Major bump to both libc and libpthread.
Requested by libressl team. Ports testing by naddy@ ok kettenis@
show more ...
|
| #
a26544ef |
| 01-Sep-2016 |
otto <otto@openbsd.org> |
bump
|
| #
fe38b55c |
| 07-May-2016 |
guenther <guenther@openbsd.org> |
Use a Thread Information Block in both single and multi-threaded programs. This stores errno, the cancelation flags, and related bits for each thread and is allocated by ld.so or libc.a. This is an
Use a Thread Information Block in both single and multi-threaded programs. This stores errno, the cancelation flags, and related bits for each thread and is allocated by ld.so or libc.a. This is an ABI break from 5.9-stable!
Make libpthread dlopen'able by moving the cancelation wrappers into libc and doing locking and fork/errno handling via callbacks that libpthread registers when it first initializes. 'errno' *must* be declared via <errno.h> now!
Clean up libpthread's symbol exports like libc.
On powerpc, offset the TIB/TCB/TLS data from the register per the ELF spec.
Testing by various, particularly sthen@ and patrick@ ok kettenis@
show more ...
|
| #
46afc4a4 |
| 21-Mar-2016 |
bluhm <bluhm@openbsd.org> |
Rename the system call sendsyslog2 to sendsyslog. Keep the old one as osendsyslog for a while. The three argument variant is the only one that will stay. input kettenis@; OK deraadt@
|
| #
60d49506 |
| 10-Nov-2015 |
guenther <guenther@openbsd.org> |
Split the intra-thread functionality from kill(2) into its own syscall thrkill(2), rolling the kill(2) syscall number with the ABI change to avoid breaking binaries during during the transition. thr
Split the intra-thread functionality from kill(2) into its own syscall thrkill(2), rolling the kill(2) syscall number with the ABI change to avoid breaking binaries during during the transition. thrkill(2) includes a 'tcb' argument that eliminates the need for locking in pthread_kill() and simplifies pthread_cancel(). Switch __stack_smash_handler() to use thrkill(2) and explicitly unblock SIGABRT.
Minor bump to both libc and libpthread: make sure you install a new kernel!
ok semarie@
show more ...
|
| #
5aed4d28 |
| 23-Oct-2015 |
guenther <guenther@openbsd.org> |
Merge the sigaction() and sigprocmask() overloads/wrappers from libpthread into libc, and move pthread_sigmask() as well (just a trivial wrapper). This provides consistent handling of SIGTHR between
Merge the sigaction() and sigprocmask() overloads/wrappers from libpthread into libc, and move pthread_sigmask() as well (just a trivial wrapper). This provides consistent handling of SIGTHR between single- and multi-threaded programs and is a step in the merge of all the libpthread overloads, providing some ASM and Makefile bits that the other wrappers will need.
ok deraadt@ millert@
show more ...
|
| #
514a545f |
| 07-Apr-2015 |
guenther <guenther@openbsd.org> |
Make pthread_atfork() track the DSO that called it like atexit() does, unregistering callbacks if the DSO is unloaded. Move the callback handling from libpthread to libc, though libpthread still ove
Make pthread_atfork() track the DSO that called it like atexit() does, unregistering callbacks if the DSO is unloaded. Move the callback handling from libpthread to libc, though libpthread still overrides the inner call to handle locking and thread-library reinitialization. Major version bump for both libc and libpthread.
verification that this fixes various ports ajacoutot@ asm assistance miod@; ok millert@ deraadt@
show more ...
|
| #
2e8e336f |
| 31-Aug-2014 |
guenther <guenther@openbsd.org> |
accept4() should be a cancellation point. Update the list in the pthread_testcancel(3) manpage: several were missing.
noted by miod@
|
| #
91a535ff |
| 13-Aug-2013 |
guenther <guenther@openbsd.org> |
Switch time_t, ino_t, clock_t, and struct kevent's ident and data members to 64bit types. Assign new syscall numbers for (almost all) the syscalls that involve the affected types, including anything
Switch time_t, ino_t, clock_t, and struct kevent's ident and data members to 64bit types. Assign new syscall numbers for (almost all) the syscalls that involve the affected types, including anything with time_t, timeval, itimerval, timespec, rusage, dirent, stat, or kevent arguments. Add a d_off member to struct dirent and replace getdirentries() with getdents(), thus immensely simplifying and accelerating telldir/seekdir. Build perl with -DBIG_TIME.
Bump the major on every single base library: the compat bits included here are only good enough to make the transition; the T32 compat option will be burned as soon as we've reached the new world are are happy with the snapshots for all architectures.
DANGER: ABI incompatibility. Updating to this kernel requires extra work or you won't be able to login: install a snapshot instead.
Much assistance in fixing userland issues from deraadt@ and tedu@ and build assistance from todd@ and otto@
show more ...
|
| #
7b36c281 |
| 17-Jun-2013 |
guenther <guenther@openbsd.org> |
Add support for the _POSIX_CPUTIME and _POSIX_THREAD_CPUTIME options, including CLOCK_{PROCESS,THREAD}_CPUTIME_ID constants and {clock,pthread}_getcpuclockid() functions.
Worked out at t2k13 with he
Add support for the _POSIX_CPUTIME and _POSIX_THREAD_CPUTIME options, including CLOCK_{PROCESS,THREAD}_CPUTIME_ID constants and {clock,pthread}_getcpuclockid() functions.
Worked out at t2k13 with help from tedu@ and matthew@ and testing by aja@ ok matthew@
show more ...
|
| #
665a0e7e |
| 01-Jun-2013 |
miod <miod@openbsd.org> |
Add utrace(2), a system call allowing for userland to send its own ktrace records. From FreeBSD via otto@, with tweaks suggested by guenther@. Commite on behalf of otto@ who is not around, to ride th
Add utrace(2), a system call allowing for userland to send its own ktrace records. From FreeBSD via otto@, with tweaks suggested by guenther@. Commite on behalf of otto@ who is not around, to ride the libc minor bump. Causes a librthread minor bump as well (new syscall).
show more ...
|
| #
17132ff2 |
| 29-Apr-2013 |
matthew <matthew@openbsd.org> |
Extend P_SIGSUSPEND handling in userret() to properly restore the sigmask even if there are no pending signals under the temporary sigmask.
Refactor existing select() and poll() system calls to intr
Extend P_SIGSUSPEND handling in userret() to properly restore the sigmask even if there are no pending signals under the temporary sigmask.
Refactor existing select() and poll() system calls to introduce the pselect() and ppoll() system calls.
Add rthread wrappers for pselect() and ppoll(). While there, update cancellation point comments to reflect recent fdatasync() addition.
Minor bumps for libc and librthread due to new symbols.
ok guenther, millert, deraadt, jmc
show more ...
|
| #
6b29d477 |
| 15-Aug-2012 |
matthew <matthew@openbsd.org> |
A couple small but long anticipated changes:
- Link libpthread.so with -znodlopen. Because libpthread overrides the weak symbols in libc, we can't allow it to be dynamically loaded or els
A couple small but long anticipated changes:
- Link libpthread.so with -znodlopen. Because libpthread overrides the weak symbols in libc, we can't allow it to be dynamically loaded or else libc's weak symbols might have already been resolved by ld.so. (Also, major bump because this is technically a backwards incompat change in behavior, although dlopen()ing libpthread never really worked.)
- Link libc.so with -nodefaultlibs -lgcc. This ensures that libc doesn't try to link against itself (which ld.so wouldn't like).
- Change GCC 4 to link shared objects with -lpthread and -lc as appropriate, now that there's no issues with doing so. This means that it's no longer necessary to patch software to use -pthread instead of -lpthread. (Ports tree rejoice!)
Also, to preemptively answer this question: No, this does not eliminate the need for LD_PRELOAD=libpthread.so. That's a separate issue that won't be resolved until we eliminate libc's weak symbols.
Discussed extensively on email and icb over the past few months. ok deraadt
show more ...
|
| #
16b62b6a |
| 21-Jun-2012 |
guenther <guenther@openbsd.org> |
__tfork() needs to set the stack address of the new thread in the kernel, so that it can't get a signal while still running on the parent thread's stack. Also, pass in sizeof(struct __tfork) to prov
__tfork() needs to set the stack address of the new thread in the kernel, so that it can't get a signal while still running on the parent thread's stack. Also, pass in sizeof(struct __tfork) to provide forward compat when more members are added. This is an ABI change, so switch syscall numbers and bump lib majors this time.
ok deraadt@ matthew@
show more ...
|
| #
5037ac14 |
| 03-May-2012 |
pirofti <pirofti@openbsd.org> |
Add pthread spinlock support.
Implementation, documentation and naive regression tests for: - pthread_spin_init() - pthread_spin_destroy() - pthread_spin_lock() - pthread_spin_trylock() - pthread_sp
Add pthread spinlock support.
Implementation, documentation and naive regression tests for: - pthread_spin_init() - pthread_spin_destroy() - pthread_spin_lock() - pthread_spin_trylock() - pthread_spin_unlock()
Implementation okay guenther@, documentation okay jmc@.
show more ...
|
| #
9072a053 |
| 11-Apr-2012 |
pirofti <pirofti@openbsd.org> |
Minor bump after my previous commit. Noticed by deraadt@.
|