#
5b133f3f |
| 08-Mar-2023 |
guenther <guenther@openbsd.org> |
Delete obsolete /* ARGSUSED */ lint comments.
ok miod@ millert@
|
#
ba203458 |
| 06-Oct-2021 |
claudio <claudio@openbsd.org> |
Change sendsig() interface so that the MD code does not need to access data from struct process anymore. This changes how siginfo and onstack are accessed and make sendsig() more MP friendly. With an
Change sendsig() interface so that the MD code does not need to access data from struct process anymore. This changes how siginfo and onstack are accessed and make sendsig() more MP friendly. With and OK semarie@ OK kettenis@
show more ...
|
#
1e286331 |
| 08-Nov-2020 |
mpi <mpi@openbsd.org> |
In case of failure, call sigexit() from trapsignal instead of sensig().
Simplify MD code and reduce the amount of recursion into the signal code which helps when dealing with locks.
ok cheloha@, de
In case of failure, call sigexit() from trapsignal instead of sensig().
Simplify MD code and reduce the amount of recursion into the signal code which helps when dealing with locks.
ok cheloha@, deraadt@
show more ...
|
#
b011c943 |
| 02-Aug-2019 |
visa <visa@openbsd.org> |
Avoid repeated invocation of curcpu().
|
#
eccdecef |
| 06-May-2019 |
visa <visa@openbsd.org> |
Enforce store/load order when setting or clearing AST flag on mips64
Make sure that any preceding stores become visible to other CPUs before setting the AST flag in need_resched() and signotify(). T
Enforce store/load order when setting or clearing AST flag on mips64
Make sure that any preceding stores become visible to other CPUs before setting the AST flag in need_resched() and signotify(). This should prevent a very unlikely case with inter-CPU ASTs where the receiving CPU uses stale state.
When clearing the AST flag in ast(), ensure that the clearing store is performed before any other memory accesses in the AST handler. Otherwise, there is a slight risk of losing an AST request that gets posted while the handler is running.
OK guenther@
show more ...
|
#
00c79297 |
| 05-May-2019 |
visa <visa@openbsd.org> |
Turn need_resched() and signotify() into proper functions on mips64.
|
#
4cf51ffb |
| 10-Jul-2018 |
guenther <guenther@openbsd.org> |
Move from sendsig() to its callers the initsiginfo() calls and instead of passing sendsig() the code+type+val, pass a siginfo_t* to copy from. Eliminate the indirection through struct emul for sends
Move from sendsig() to its callers the initsiginfo() calls and instead of passing sendsig() the code+type+val, pass a siginfo_t* to copy from. Eliminate the indirection through struct emul for sendsig(); we no longer have a SunOS4-compat version of sendsig()
ok deraadt@
show more ...
|
#
06ea7a9a |
| 22-May-2018 |
guenther <guenther@openbsd.org> |
Delete antique sigdebug definitions
ok kettenis@
|
#
003f5e42 |
| 12-Apr-2018 |
deraadt <deraadt@openbsd.org> |
Implement MAP_STACK option for mmap(). Synchronous faults (pagefault and syscall) confirm the stack register points at MAP_STACK memory, otherwise SIGSEGV is delivered. sigaltstack() and pthread_att
Implement MAP_STACK option for mmap(). Synchronous faults (pagefault and syscall) confirm the stack register points at MAP_STACK memory, otherwise SIGSEGV is delivered. sigaltstack() and pthread_attr_setstack() are modified to create a MAP_STACK sub-region which satisfies alignment requirements. Observe that MAP_STACK can only be set/cleared by mmap(), which zeroes the contents of the region -- there is no mprotect() equivalent operation, so there is no MAP_STACK-adding gadget. This opportunistic software-emulation of a stack protection bit makes stack-pivot operations during ROPchain fragile (kind of like removing a tool from the toolbox). original discussion with tedu, uvm work by stefan, testing by mortimer ok kettenis
show more ...
|
#
e99873aa |
| 21-May-2016 |
deraadt <deraadt@openbsd.org> |
hand-massage sendsig() and sys_sigreturn() to be much more similar. ok guenther kettenis
|
#
7730d1d9 |
| 10-May-2016 |
deraadt <deraadt@openbsd.org> |
SROP mitigation. sendsig() stores a (per-process ^ &sigcontext) cookie inside the sigcontext. sigreturn(2) checks syscall entry was from the exact PC addr in the (per-process ASLR) sigtramp, verifi
SROP mitigation. sendsig() stores a (per-process ^ &sigcontext) cookie inside the sigcontext. sigreturn(2) checks syscall entry was from the exact PC addr in the (per-process ASLR) sigtramp, verifies the cookie, and clears it to prevent sigcontext reuse. not yet tested on landisk, sparc, *88k, socppc. ok kettenis
show more ...
|
#
b43ebd13 |
| 06-Mar-2016 |
mpi <mpi@openbsd.org> |
Rename mips64's trap_frame into trapframe.
For coherency with other archs and in order to use it in MI code.
ok visa@, tobiasu@
|
#
6e870393 |
| 09-Feb-2015 |
miod <miod@openbsd.org> |
Do not even try to call uvm_grow() from sendsig. It will be invoked automagically if copyout() of the signal frame faults.
|
#
8051afc3 |
| 02-Jan-2015 |
sebastia <sebastia@openbsd.org> |
Fix a few format string warnings, allow to build DEBUG kernel on sgi
OK miod@
|
#
8f76f5ad |
| 26-Mar-2014 |
guenther <guenther@openbsd.org> |
Move p_emul and p_sigcode from proc to process. Tweak the handling of ktrace EMUL when changing ktracing: only generate one per process (not one per thread) and pass the correct proc pointer down to
Move p_emul and p_sigcode from proc to process. Tweak the handling of ktrace EMUL when changing ktracing: only generate one per process (not one per thread) and pass the correct proc pointer down to the VFS layer. Permit generating of NAMI and CSW records inside ktrace(2) itself.
ok deraadt@ millert@
show more ...
|
#
533be81a |
| 22-Mar-2014 |
guenther <guenther@openbsd.org> |
Move p_sigacts from struct proc to struct process.
testing help mpi@
|
#
1eaa59e7 |
| 02-Dec-2012 |
guenther <guenther@openbsd.org> |
Determine whether we're currently on the alternative signal stack dynamically, by comparing the stack pointer against the altstack base and size, so that you get the correct answer if you longjmp out
Determine whether we're currently on the alternative signal stack dynamically, by comparing the stack pointer against the altstack base and size, so that you get the correct answer if you longjmp out of the signal handler, as tested by regress/sys/kern/stackjmp/. Also, fix alt stack handling on vax, where it was completely broken.
Testing and corrections by miod@, krw@, tobiasu@, pirofti@
show more ...
|
#
7b6ae6a5 |
| 03-Oct-2012 |
miod <miod@openbsd.org> |
Split ever-growing mips <machine/cpu.h> into what 99% of the kernel needs, which will remain in <machine/cpu.h>, and a new mips_cpu.h containing only the goriest md details, which are only of interes
Split ever-growing mips <machine/cpu.h> into what 99% of the kernel needs, which will remain in <machine/cpu.h>, and a new mips_cpu.h containing only the goriest md details, which are only of interest to a handful set of files; this is similar in spirit to what alpha does, but here <machine/cpu.h> does not include the new file.
show more ...
|
#
72830333 |
| 22-Aug-2012 |
okan <okan@openbsd.org> |
sigpid should be of type pid_t (only visable with DEBUG).
ok miod@ (who found others to fix as well)
|
#
2725dadd |
| 05-Jul-2011 |
guenther <guenther@openbsd.org> |
Recommit the reverted sigacts change now that the NFS use-after-free problem has been tracked down. This fixes the sharing of the signal handling state: shared bits go in sigacts, per-rthread bits g
Recommit the reverted sigacts change now that the NFS use-after-free problem has been tracked down. This fixes the sharing of the signal handling state: shared bits go in sigacts, per-rthread bits goes in struct proc.
ok deraadt@
show more ...
|
#
80b87c50 |
| 18-Apr-2011 |
guenther <guenther@openbsd.org> |
Revert the sigacts diff: NFS can apparently retain pointers to processes until they're zombies and then send them signals (for intr mounts). Until that is untangled, the sigacts change is unsafe. s
Revert the sigacts diff: NFS can apparently retain pointers to processes until they're zombies and then send them signals (for intr mounts). Until that is untangled, the sigacts change is unsafe. sthen@ was the victim for this one
show more ...
|
#
4dec2d3c |
| 15-Apr-2011 |
guenther <guenther@openbsd.org> |
Correct the sharing of the signal handling state: stuff that should be shared (p_sigignore, p_sigcatch, P_NOCLDSTOP, P_NOCLDWAIT) moves to struct sigacts, wihle stuff that should be per rthread (ps_o
Correct the sharing of the signal handling state: stuff that should be shared (p_sigignore, p_sigcatch, P_NOCLDSTOP, P_NOCLDWAIT) moves to struct sigacts, wihle stuff that should be per rthread (ps_oldmask, SAS_OLDMASK, ps_sigstk) moves to struct proc. Treat the coredumping state bits (ps_sig, ps_code, ps_type, ps_sigval) as per-rthread until our locking around coredumping is better.
Oh, and remove the old SunOS-compat ps_usertramp member.
"I like the sound of this" tedu@
show more ...
|
#
88ee6abd |
| 07-Apr-2011 |
miod <miod@openbsd.org> |
Do not use NULL in integer comparisons. No functional change. ok matthew@ tedu@, also eyeballed by at least krw@ oga@ kettenis@ jsg@
|
#
e6d26cf8 |
| 26-Jun-2010 |
guenther <guenther@openbsd.org> |
Don't #include <sys/user.h> into files that don't need the stuff it defines. In some cases, this means pulling in uvm.h or pcb.h instead, but most of the inclusions were just noise. Tested on alpha
Don't #include <sys/user.h> into files that don't need the stuff it defines. In some cases, this means pulling in uvm.h or pcb.h instead, but most of the inclusions were just noise. Tested on alpha, amd64, armish, hppa, i386, macpcc, sgi, sparc64, and vax, mostly by krw and naddy. ok krw@
show more ...
|
#
3f1243dc |
| 21-Apr-2010 |
deraadt <deraadt@openbsd.org> |
more cleanup to cope with the change that tries to make proc.h not act like it is everything.h ok tedu
|