#
949c1c4e |
| 07-Nov-2024 |
miod <miod@openbsd.org> |
Constify strings in symbol-related ddb interfaces, and make the iterator callback interface a bit simpler. ok beck@ claudio@ mpi@
|
#
60ddae46 |
| 16-Oct-2024 |
miod <miod@openbsd.org> |
Deliver SIGTRAP, rather than SIGEMT, for trap instructions which are neither debugger breakpoints nor compiler-generated divide by zero reports.
SIGEMT is a historical curiosity which makes no sense
Deliver SIGTRAP, rather than SIGEMT, for trap instructions which are neither debugger breakpoints nor compiler-generated divide by zero reports.
SIGEMT is a historical curiosity which makes no sense nowadays except on PDP-11 and VAX hardware.
Discussed with imp@ and visa@ long ago.
show more ...
|
#
479c151d |
| 20-Sep-2024 |
jsg <jsg@openbsd.org> |
remove unneeded semicolons; checked by millert@
|
#
82f13a27 |
| 11-Jan-2024 |
miod <miod@openbsd.org> |
Since no system call takes more than 6 arguments, and no more than one off_t argument, there is no need to process more than 6 arguments on 64-bit platforms and 8 on 32-bit platforms.
Make the sysca
Since no system call takes more than 6 arguments, and no more than one off_t argument, there is no need to process more than 6 arguments on 64-bit platforms and 8 on 32-bit platforms.
Make the syscall argument gathering code simpler by removing never-used code to fetch more arguments from the stack, and local argument arrays when pointing to the trap frame does the job.
ok guenther@ jsing@
show more ...
|
#
cb0f97f9 |
| 13-Dec-2023 |
miod <miod@openbsd.org> |
Fix syscall number bounds check computations.
|
#
f62f6972 |
| 13-Dec-2023 |
deraadt <deraadt@openbsd.org> |
another syscall(2) removal chunk got lost
|
#
cafeb892 |
| 12-Dec-2023 |
deraadt <deraadt@openbsd.org> |
remove support for syscall(2) -- the "indirection system call" because it is a dangerous alternative entry point for all system calls, and thus incompatible with the precision system call entry point
remove support for syscall(2) -- the "indirection system call" because it is a dangerous alternative entry point for all system calls, and thus incompatible with the precision system call entry point scheme we are heading towards. This has been a 3-year mission: First perl needed a code-generated wrapper to fake syscall(2) as a giant switch table, then all the ports were cleaned with relatively minor fixes, except for "go". "go" required two fixes -- 1) a framework issue with old library versions, and 2) like perl, a fake syscall(2) wrapper to handle ioctl(2) and sysctl(2) because "syscall(SYS_ioctl" occurs all over the place in the "go" ecosystem because the "go developers" are plan9-loving unix-hating folk who tried to build an ecosystem without allowing "ioctl". ok kettenis, jsing, afresh1, sthen
show more ...
|
#
a28bb56f |
| 26-Apr-2023 |
claudio <claudio@openbsd.org> |
Implement dt(4) utrace support on amd64 and i386.
This adds stacktrace_save_utrace() to extract and save the userland stack which is stubbed out on most archs. alpha and riscv64 do not even implemen
Implement dt(4) utrace support on amd64 and i386.
This adds stacktrace_save_utrace() to extract and save the userland stack which is stubbed out on most archs. alpha and riscv64 do not even implement dt(4) and stacktrace_save_at() so the stubs are excluded there.
Additionally add a new ioctl DTIOCGETAUXBASE which allows btrace to fetch the AUX_BASE vallue from the AUX vector of a process.
OK mpi@ (some time ago) discussed with kettenis@
show more ...
|
#
60a50f65 |
| 11-Feb-2023 |
deraadt <deraadt@openbsd.org> |
__syscall() is no longer neccessary since the system calls which needed it are now unpadded ok kettenis guenther
|
#
e2c8dd8b |
| 16-Jan-2023 |
deraadt <deraadt@openbsd.org> |
we spent far too long debugging a weird go library problem (incorrect arguments to mmap) because it was using syscall(2) and that callpath is invisible in ktrace. make it visible, it will now show "
we spent far too long debugging a weird go library problem (incorrect arguments to mmap) because it was using syscall(2) and that callpath is invisible in ktrace. make it visible, it will now show "(via syscall)" and such. ok guenther
show more ...
|
#
16e66f46 |
| 11-Jan-2023 |
visa <visa@openbsd.org> |
Add TLB bypass for instruction emulation
copyinsn() fetches a userland instruction through the direct map. This lets emulation work with execute-only virtual memory mappings.
OK deraadt@
|
#
48680f67 |
| 10-Jan-2023 |
miod <miod@openbsd.org> |
Enable the fine-grained fault type computation code added in 1.117 on all mips64 processors, not only Octeon; needed to cope with xonly mappings.
|
#
27a384f9 |
| 18-Nov-2022 |
deraadt <deraadt@openbsd.org> |
mips64 code calls uvm_map_protect() directly, so needs to adapt: stack growth from setrlimit was never updated to set UVM_ET_STACK on the entries, so the check-sp-at-system-call check failed. Quite
mips64 code calls uvm_map_protect() directly, so needs to adapt: stack growth from setrlimit was never updated to set UVM_ET_STACK on the entries, so the check-sp-at-system-call check failed. Quite strange it took this long to find this. ok kettenis
show more ...
|
#
f11c99e6 |
| 02-Nov-2022 |
guenther <guenther@openbsd.org> |
Clean up more ancient history: since 2015 the libc stubs for fork/vfork/__tfork haven't cared about the second return register. So, stop setting retval[1] in kern_fork.c and stop setting the second r
Clean up more ancient history: since 2015 the libc stubs for fork/vfork/__tfork haven't cared about the second return register. So, stop setting retval[1] in kern_fork.c and stop setting the second return register in the MD child_return() routines.
With the above, we have no multi-register return values on LP64, so stop touching that register in the trapframe on those archs.
testing miod@ and aoyama@ ok miod@
show more ...
|
#
8c7187e8 |
| 07-Oct-2022 |
deraadt <deraadt@openbsd.org> |
Add mimmutable(2) system call which locks the permissions (PROT_*) of memory mappings so they cannot be changed by a later mmap(), mprotect(), or munmap(), which will error with EPERM instead. ok ket
Add mimmutable(2) system call which locks the permissions (PROT_*) of memory mappings so they cannot be changed by a later mmap(), mprotect(), or munmap(), which will error with EPERM instead. ok kettenis
show more ...
|
#
fd80a8c4 |
| 28-Feb-2022 |
visa <visa@openbsd.org> |
Remove unneeded symbol name lookup.
|
#
28abd37b |
| 25-Jan-2022 |
visa <visa@openbsd.org> |
Use unguarded loads in stack trace saving
The stack trace saver should see a system state that is not broken. Therefore use unguarded memory accesses.
However, the unwinder is still haphazard. Term
Use unguarded loads in stack trace saving
The stack trace saver should see a system state that is not broken. Therefore use unguarded memory accesses.
However, the unwinder is still haphazard. Terminate immediately if the program counter or stack pointer look inconsistent.
show more ...
|
#
dd91a1c8 |
| 21-Jan-2022 |
visa <visa@openbsd.org> |
Limit unwinder symbol search to FUNC symbols
The prolog scanning has to locate the start of the subroutine, not some local symbol in the middle.
This should reduce cases where unwinding goes astray
Limit unwinder symbol search to FUNC symbols
The prolog scanning has to locate the start of the subroutine, not some local symbol in the middle.
This should reduce cases where unwinding goes astray.
OK miod@
show more ...
|
#
f231ff59 |
| 09-Dec-2021 |
guenther <guenther@openbsd.org> |
We only have one syscall table: inline sysent/SYS_MAXSYSCALL and SYS_syscall as the nosys() function into the MD syscall entry routines and the SYSCALL_DEBUG support. Adjust alpha's syscall check to
We only have one syscall table: inline sysent/SYS_MAXSYSCALL and SYS_syscall as the nosys() function into the MD syscall entry routines and the SYSCALL_DEBUG support. Adjust alpha's syscall check to match the other archs. Also, make sysent const to get it into .rodata.
With that, 'struct emul' is unused: delete it and all its references
ok millert@
show more ...
|
#
a3258603 |
| 24-Oct-2021 |
visa <visa@openbsd.org> |
Unlock top part of UVM fault handler on mips64.
OK mpi@
|
#
bfc185c1 |
| 01-May-2021 |
visa <visa@openbsd.org> |
Retire OpenBSD/sgi.
OK deraadt@
|
#
36fd90dc |
| 11-Mar-2021 |
jsg <jsg@openbsd.org> |
spelling
|
#
2d10d447 |
| 22-Oct-2020 |
deraadt <deraadt@openbsd.org> |
uvm_grow() doesn't need KERNEL_LOCK anymore, and onfault never did. minor refactorings to narrow KERNEL_LOCK just around uvm_fault() ok kettenis
|
#
3e784f98 |
| 21-Oct-2020 |
deraadt <deraadt@openbsd.org> |
uvm_grow() now does the vm_maxsaddr check (before locking), so callers don't need to do it ok kettenis
|
#
36c8ae06 |
| 20-Oct-2020 |
visa <visa@openbsd.org> |
Add handling for a trap instruction that terminates the process.
OK deraadt@
|