Revision tags: release/14.0.0 |
|
#
e6dbc99d |
| 25-Oct-2023 |
Andrew Turner <andrew@FreeBSD.org> |
arm64: Create a Linux view of the ID registers
When adding support for new hardware extensions we may not want to enable support for the FreeBSD and Linux ABIs at the same time. To support this spli
arm64: Create a Linux view of the ID registers
When adding support for new hardware extensions we may not want to enable support for the FreeBSD and Linux ABIs at the same time. To support this split the Linux ID register and hwcaps so they can be configured separately.
Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D42372
show more ...
|
#
070a4ff8 |
| 25-Oct-2023 |
Andrew Turner <andrew@FreeBSD.org> |
arm64: Use the Linux sigframe to restore registers
When returning from a Linux signal use the Linux sigframe to find the register values to restore.
Remove the FreeBSD ucontext from the stack as it
arm64: Use the Linux sigframe to restore registers
When returning from a Linux signal use the Linux sigframe to find the register values to restore.
Remove the FreeBSD ucontext from the stack as it's now unneeded.
Reviewed by: dchagin, emaste Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D42360
show more ...
|
#
03f5bd1e |
| 10-Oct-2023 |
Dmitry Chagin <dchagin@FreeBSD.org> |
linux(4): Drop the outdated comment, nosys is fine since 39024a89
MFC after: 1 week
|
#
39024a89 |
| 25-Sep-2023 |
Konstantin Belousov <kib@FreeBSD.org> |
syscalls: fix missing SIGSYS for several ENOSYS errors
In particular, when the syscall number is too large, or when syscall is dynamic. For that, add nosys_sysent structure to pass fake sysent to s
syscalls: fix missing SIGSYS for several ENOSYS errors
In particular, when the syscall number is too large, or when syscall is dynamic. For that, add nosys_sysent structure to pass fake sysent to syscall top code.
Reviewed by: dchagin, markj Discussed with: jhb Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D41976
show more ...
|
#
027d727d |
| 11-Sep-2023 |
Dmitry Chagin <dchagin@FreeBSD.org> |
linux(4): Cleanup includes under arm64
No functional changes.
MFC after: 1 week
|
#
20845a69 |
| 05-Sep-2023 |
Dmitry Chagin <dchagin@FreeBSD.org> |
linux(4): Validate exec_setregs on arm64
The lr register is cleared at the beginning of the _dl_start and _start, so there is no need to initialize it. Gnu libc _start takes an rtld_fini pointer in
linux(4): Validate exec_setregs on arm64
The lr register is cleared at the beginning of the _dl_start and _start, so there is no need to initialize it. Gnu libc _start takes an rtld_fini pointer in x0 which is set by ld.so for __libc_start_main, the kernel does not register any atexit pointers.
While here fix whitespaces.
MFC after: 1 week
show more ...
|
#
3460fab5 |
| 18-Aug-2023 |
Dmitry Chagin <dchagin@FreeBSD.org> |
linux(4): Remove sys/cdefs.h inclusion where it's not needed due to 685dc743
|
#
685dc743 |
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: one-line .c pattern
Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
|
#
fd745e1d |
| 29-May-2023 |
Dmitry Chagin <dchagin@FreeBSD.org> |
linux(4): Use pwd_altroot() to tell namei() about ABI root path
PR: 72920 Differential Revision: https://reviews.freebsd.org/D40090 MFC after: 2 month
|
#
d957343f |
| 14-May-2023 |
Dmitry Chagin <dchagin@FreeBSD.org> |
linux(4): Rework signal trampoline on Aarch64
To avoid clobbering of any registers by the trampoline code use Linux way to call signal handlers. I.e., we are out from the kernel right into the signa
linux(4): Rework signal trampoline on Aarch64
To avoid clobbering of any registers by the trampoline code use Linux way to call signal handlers. I.e., we are out from the kernel right into the signal handler, put return address from the signal handler into the link register. The mysterious NOP is required for some unwinders (e.g. libc++) that unconditionally subtract one from the result of _Unwind_GetIP() in order to identify the calling function.
MFC after: 1 week
show more ...
|
#
5f19e18b |
| 14-May-2023 |
Dmitry Chagin <dchagin@FreeBSD.org> |
linux(4): Get rid of linux_vdso_sigcode
MFC after: 1 week
|
#
2cdeb89e |
| 14-May-2023 |
Dmitry Chagin <dchagin@FreeBSD.org> |
linux(4): Fix stack unwinding on arm64 [2/2]
To allow unwinders to go througth a previous to sigreturn frame we should properly emulate the trampoline frame record which should points to the previou
linux(4): Fix stack unwinding on arm64 [2/2]
To allow unwinders to go througth a previous to sigreturn frame we should properly emulate the trampoline frame record which should points to the previous frame and set the trampoline frame pointer to the emulated frame before calling signal handler.
MFC after: 1 week
show more ...
|
#
bf3a14b4 |
| 14-May-2023 |
Dmitry Chagin <dchagin@FreeBSD.org> |
linux(4): Fix stack unwinding on arm64 [1/2]
An Aarch64 sigreturn trampoline frame can't currently be described in a DWARF .eh_frame section, because Aarch64 does not define a register number for PC
linux(4): Fix stack unwinding on arm64 [1/2]
An Aarch64 sigreturn trampoline frame can't currently be described in a DWARF .eh_frame section, because Aarch64 does not define a register number for PC and provide no direct way to encode PC of the previous frame. Instead, unwinders (libgcc, gdb, libunwind) detect the sigreturn frame by looking for the sigreturn instruction. If a sigreturn frame is detected, unwinders restores all the gprs, SP and PC by assuming that sp points to an rt_sigframe Linux kernel struct When entering the kernel, the link register (lr) contains the return address of the previous frame, the exception link register (elr) contains the address of the next instruction after the one which generated the exception, i.e., PC.
MFC after: 1 week
show more ...
|
#
4d846d26 |
| 10-May-2023 |
Warner Losh <imp@FreeBSD.org> |
spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD
The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch up to that fact and revert to their recommended match of
spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD
The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch up to that fact and revert to their recommended match of BSD-2-Clause.
Discussed with: pfg MFC After: 3 days Sponsored by: Netflix
show more ...
|
#
7d8c9839 |
| 22-Apr-2023 |
Dmitry Chagin <dchagin@FreeBSD.org> |
linux(4): Deduplicate linux_copyout_auxargs()
Export default MINSIGSTKSZ value for the x86 until we do not preserve AVX registers in the signal context.
Differential Revision: https://reviews.freeb
linux(4): Deduplicate linux_copyout_auxargs()
Export default MINSIGSTKSZ value for the x86 until we do not preserve AVX registers in the signal context.
Differential Revision: https://reviews.freebsd.org/D39644 MFC after: 1 month
show more ...
|
Revision tags: release/13.2.0 |
|
#
55d3e181 |
| 14-Feb-2023 |
Dmitry Chagin <dchagin@FreeBSD.org> |
linux(4): Cleanup includes under arm64/linux
Cleanup unneeded includes, sort the rest according to style(9). No functional changes.
MFC after: 2 weeks
|
#
95b86034 |
| 02-Feb-2023 |
Dmitry Chagin <dchagin@FreeBSD.org> |
linux(4): Deduplicate linux_trans_osrel().
MFC after: 1 week
|
#
6039e966 |
| 02-Feb-2023 |
Dmitry Chagin <dchagin@FreeBSD.org> |
linux(4): Deduplicate linux_copyout_strings().
It is still present in the 32-bit Linuxulator on amd64.
MFC after: 1 week
|
#
74465145 |
| 02-Feb-2023 |
Dmitry Chagin <dchagin@FreeBSD.org> |
linux(4): Microoptimize linux_elf.h for future use.
In order to reduce code duplication move coredump support definitions into the appropriate header and hide private definitions.
MFC after: 1 week
|
#
2555f175 |
| 31-Jan-2023 |
Konstantin Belousov <kib@FreeBSD.org> |
Move kstack_contains() and GET_STACK_USAGE() to MD machine/stack.h
Reviewed by: jhb Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D38320
|
Revision tags: release/12.4.0 |
|
#
1da65dcb |
| 28-Oct-2022 |
Mitchell Horne <mhorne@FreeBSD.org> |
linux: populate sv_syscallnames in each sysentvec
This allows the syscallname() function to give a usable result for Linux ABIs.
Reported by: jrtc27 Reviewed by: jrtc27, markj, jhb MFC after: 1 wee
linux: populate sv_syscallnames in each sysentvec
This allows the syscallname() function to give a usable result for Linux ABIs.
Reported by: jrtc27 Reviewed by: jrtc27, markj, jhb MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D37199
show more ...
|
#
361971fb |
| 02-Jun-2022 |
Kornel Dulęba <kd@FreeBSD.org> |
Rework how shared page related data is stored
Store the shared page address in struct vmspace. Also instead of storing absolute addresses of various shared page segments save their offsets with resp
Rework how shared page related data is stored
Store the shared page address in struct vmspace. Also instead of storing absolute addresses of various shared page segments save their offsets with respect to the shared page address. This will be more useful when the shared page address is randomized.
Approved by: mw(mentor) Sponsored by: Stormshield Obtained from: Semihalf Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D35393
show more ...
|
#
109fd18a |
| 30-May-2022 |
Dmitry Chagin <dchagin@FreeBSD.org> |
linux(4): Properly build argument list for the signal handler
Provide arguments 2 and 3 if signal handler installed with SA_SIGINFO.
MFC after: 2 weeks
|
#
eca368ec |
| 20-May-2022 |
Dmitry Chagin <dchagin@FreeBSD.org> |
Retire sv_transtrap
Call translate_traps directly from sendsig().
MFC after: 2 weeks
|
#
f34a9180 |
| 20-May-2022 |
Dmitry Chagin <dchagin@FreeBSD.org> |
linux(4): Retire unneeded translate_traps from arm64
MFC after: 2 weeks
|