|
Revision tags: release/12.4.0, release/13.1.0, release/12.3.0 |
|
| #
187a6353 |
| 13-Apr-2021 |
Edward Tomasz Napierala <[email protected]> |
linux: adjust ordering of Linux auxv and add dummy AT_HWCAP2
This should be a no-op; the purpose of this is to reduce a spurious difference between Linuxulator and Linux, to make debugging core dump
linux: adjust ordering of Linux auxv and add dummy AT_HWCAP2
This should be a no-op; the purpose of this is to reduce a spurious difference between Linuxulator and Linux, to make debugging core dumps slightly easier.
Note that AT_HWCAP2 we pass to Linux binaries is always 0, instead of being equal to 'cpu_feature2'. This matches what I've observed under Ubuntu Focal VM.
Reviewed By: chuck, dchagin Sponsored By: EPSRC Differential Revision: https://reviews.freebsd.org/D29609
(cherry picked from commit ca6e1fa3ce87f56847633530cb94a6fb63405680)
show more ...
|
| #
947e8491 |
| 17-Jan-2022 |
Mark Johnston <[email protected]> |
sysent: Add a sv_psstringssz field to struct sysentvec
The size of the ps_strings structure varies between ABIs, so this is useful for computing the address of the ps_strings structure relative to t
sysent: Add a sv_psstringssz field to struct sysentvec
The size of the ps_strings structure varies between ABIs, so this is useful for computing the address of the ps_strings structure relative to the top of the stack when stack address randomization is enabled.
Reviewed by: kib Sponsored by: The FreeBSD Foundation
(cherry picked from commit 3fc21fdd5f8a4eeb71f43cc6841f59ef1debaf9a)
show more ...
|
| #
1562fe49 |
| 31-Dec-2021 |
Mark Johnston <[email protected]> |
exec: Simplify sv_copyout_strings implementations a bit
Simplify control flow around handling of the execpath length and signal trampoline. Cache the sysentvec pointer in a local variable.
No func
exec: Simplify sv_copyout_strings implementations a bit
Simplify control flow around handling of the execpath length and signal trampoline. Cache the sysentvec pointer in a local variable.
No functional change intended.
Reviewed by: kib Sponsored by: The FreeBSD Foundation
(cherry picked from commit f04a096049382637178b54ffb45089f5f9fb3db9)
show more ...
|
| #
61b29720 |
| 14-Sep-2021 |
Konstantin Belousov <[email protected]> |
amd64: centralize definitions of CS_SECURE and EFL_SECURE
(cherry picked from commit a42d362bb54af91d8b82dca086fa656f4624bae2)
|
| #
52d8029e |
| 05-Jun-2021 |
Konstantin Belousov <[email protected]> |
Add quirks for Linux ABI signals handling
(cherry picked from commit 870e197d52c1cb8c3ed6d04ddae34dcae57cb657)
|
|
Revision tags: release/13.0.0 |
|
| #
dc107fe1 |
| 14-Jan-2021 |
Konstantin Belousov <[email protected]> |
linuxolator: Add compat.linux.setid_allowed knob
PR: 21463
(cherry picked from commit 598f6fb49c9ca688029b79de0a44227ab79c608c)
|
| #
0d511482 |
| 09-Apr-2021 |
Konstantin Belousov <[email protected]> |
amd64: clear debug registers on execing 32bit Linux binary
(cherry picked from commit 94172affa43af15fe3b50293a96c292eca30c386)
|
| #
3df2766a |
| 16-Feb-2021 |
Mark Johnston <[email protected]> |
linux: Unmap the VDSO page when unloading
linux_shared_page_init() creates an object and grabs and maps a single page to back the VDSO. When destroying the VDSO object, we failed to destroy the map
linux: Unmap the VDSO page when unloading
linux_shared_page_init() creates an object and grabs and maps a single page to back the VDSO. When destroying the VDSO object, we failed to destroy the mapping and free KVA. Fix this.
Reviewed by: kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D28696
(cherry picked from commit 0fc8a796722846d0d676548aa0f5cc660199db73)
show more ...
|
| #
4815f175 |
| 23-Nov-2020 |
Konstantin Belousov <[email protected]> |
Linuxolator: Replace use of eventhandlers by sysent hooks.
Reviewed by: markj Sponsored by: The FreeBSD Foundation Differential revision: https://reviews.freebsd.org/D27309
|
| #
866b1f51 |
| 27-Oct-2020 |
Edward Tomasz Napierala <[email protected]> |
Fix misnomer - linux_to_bsd_errno() does the exact opposite.
Reported by: arichardson MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D26965
|
|
Revision tags: release/12.2.0 |
|
| #
1e2521ff |
| 27-Sep-2020 |
Edward Tomasz Napierala <[email protected]> |
Get rid of sa->narg. It serves no purpose; use sa->callp->sy_narg instead.
Reviewed by: kib Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D26458
|
| #
70890254 |
| 17-Sep-2020 |
Edward Tomasz Napierala <[email protected]> |
Get rid of sv_errtbl and SV_ABI_ERRNO().
Reviewed by: kib Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D26388
|
| #
c26391f4 |
| 15-Sep-2020 |
Edward Tomasz Napierala <[email protected]> |
Move SV_ABI_ERRNO translation into linux-specific code, to simplify the syscall path and declutter it a bit. No functional changes intended.
Reviewed by: kib (earlier version) MFC after: 2 weeks Sp
Move SV_ABI_ERRNO translation into linux-specific code, to simplify the syscall path and declutter it a bit. No functional changes intended.
Reviewed by: kib (earlier version) MFC after: 2 weeks Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D26378
show more ...
|
| #
543769bf |
| 01-Sep-2020 |
Mateusz Guzik <[email protected]> |
amd64: clean up empty lines in .c and .h files
|
|
Revision tags: release/11.4.0 |
|
| #
b24e6ac8 |
| 16-Apr-2020 |
Brooks Davis <[email protected]> |
Convert canary, execpathp, and pagesizes to pointers.
Use AUXARGS_ENTRY_PTR to export these pointers. This is a followup to r359987 and r359988.
Reviewed by: jhb Obtained from: CheriBSD Sponsored
Convert canary, execpathp, and pagesizes to pointers.
Use AUXARGS_ENTRY_PTR to export these pointers. This is a followup to r359987 and r359988.
Reviewed by: jhb Obtained from: CheriBSD Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D24446
show more ...
|
| #
397df744 |
| 15-Apr-2020 |
Brooks Davis <[email protected]> |
Make ps_strings in struct image_params into a pointer.
This is a prepratory commit for D24407.
Reviewed by: kib Obtained from: CheriBSD Sponsored by: DARPA
|
| #
7029da5c |
| 26-Feb-2020 |
Pawel Biernacki <[email protected]> |
Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many)
r357614 added CTLFLAG_NEEDGIANT to make it easier to find nodes that are still not MPSAFE (or already are but aren’t properly mark
Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many)
r357614 added CTLFLAG_NEEDGIANT to make it easier to find nodes that are still not MPSAFE (or already are but aren’t properly marked). Use it in preparation for a general review of all nodes.
This is non-functional change that adds annotations to SYSCTL_NODE and SYSCTL_PROC nodes using one of the soon-to-be-required flags.
Mark all obvious cases as MPSAFE. All entries that haven't been marked as MPSAFE before are by default marked as NEEDGIANT
Approved by: kib (mentor, blanket) Commented by: kib, gallatin, melifaro Differential Revision: https://reviews.freebsd.org/D23718
show more ...
|
| #
b5f20658 |
| 16-Dec-2019 |
Edward Tomasz Napierala <[email protected]> |
Add compat.linux.emul_path, so it can be set to something other than "/compat/linux". Useful when you have several compat directories with different Linux versions and you don't want to clash with f
Add compat.linux.emul_path, so it can be set to something other than "/compat/linux". Useful when you have several compat directories with different Linux versions and you don't want to clash with files installed by linux-c7 packages.
Reviewed by: bcr (manpages) MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D22574
show more ...
|
| #
23a5b4ed |
| 09-Dec-2019 |
John Baldwin <[email protected]> |
Use 4 byte stack alignment instead of 8 byte.
This was an old bug prior to r355373 and mostly harmless as it would waste at most a handful of bytes on the stack.
|
| #
d8010b11 |
| 09-Dec-2019 |
John Baldwin <[email protected]> |
Copy out aux args after the argument and environment vectors.
Partially revert r354741 and r354754 and go back to allocating a fixed-size chunk of stack space for the auxiliary vector. Keep sv_copy
Copy out aux args after the argument and environment vectors.
Partially revert r354741 and r354754 and go back to allocating a fixed-size chunk of stack space for the auxiliary vector. Keep sv_copyout_auxargs but change it to accept the address at the end of the environment vector as an input stack address and no longer allocate room on the stack. It is now called at the end of copyout_strings after the argv and environment vectors have been copied out.
This should fix a regression in r354754 that broke the stack alignment for newer Linux amd64 binaries (and probably broke Linux arm64 as well).
Reviewed by: kib Tested on: amd64 (native, linux64 (only linux-base-c7), and i386) Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D22695
show more ...
|
| #
31174518 |
| 03-Dec-2019 |
John Baldwin <[email protected]> |
Use uintptr_t instead of register_t * for the stack base.
- Use ustringp for the location of the argv and environment strings and allow destp to travel further down the stack for the stackgap an
Use uintptr_t instead of register_t * for the stack base.
- Use ustringp for the location of the argv and environment strings and allow destp to travel further down the stack for the stackgap and auxv regions. - Update the Linux copyout_strings variants to move destp down the stack as was done for the native ABIs in r263349. - Stop allocating a space for a stack gap in the Linux ABIs. This used to hold translated system call arguments, but hasn't been used since r159992.
Reviewed by: kib Tested on: md64 (amd64, i386, linux64), i386 (i386, linux) Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D22501
show more ...
|
| #
03b0d68c |
| 18-Nov-2019 |
John Baldwin <[email protected]> |
Check for errors from copyout() and suword*() in sv_copyout_args/strings.
Reviewed by: brooks, kib Tested on: amd64 (amd64, i386, linux64), i386 (i386, linux) Sponsored by: DARPA Differential Revisi
Check for errors from copyout() and suword*() in sv_copyout_args/strings.
Reviewed by: brooks, kib Tested on: amd64 (amd64, i386, linux64), i386 (i386, linux) Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D22401
show more ...
|
| #
5caa67fa |
| 15-Nov-2019 |
John Baldwin <[email protected]> |
Use a sv_copyout_auxargs hook in the Linux ELF ABIs.
Reviewed by: emaste Tested on: amd64 (linux64 only), i386 Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D22356
|
|
Revision tags: release/12.1.0 |
|
| #
a161fba9 |
| 18-Oct-2019 |
Yuri Pankov <[email protected]> |
linux: futex_mtx should follow futex_list
Move futex_mtx to linux_common.ko for amd64 and aarch64 along with respective list/mutex init/destroy.
PR: 240989 Reported by: Alex S <[email protected]>
|
|
Revision tags: release/11.3.0 |
|
| #
c5156c77 |
| 13-May-2019 |
Dmitry Chagin <[email protected]> |
Linuxulator depends on a fundamental kernel settings such as SMP. Many of them listed in opt_global.h which is not generated while building modules outside of a kernel and such modules never match re
Linuxulator depends on a fundamental kernel settings such as SMP. Many of them listed in opt_global.h which is not generated while building modules outside of a kernel and such modules never match real cofigured kernel.
So, we should prevent our users from building obviously defective modules.
Therefore, remove the root cause of the building of modules outside of a kernel - the possibility of building modules with DEBUG or KTR flags. And remove all of DEBUG printfs as it is incomplete and in threaded programms not informative, also a half of system call does not have DEBUG printf. For debuging Linux programms we have dtrace, ktr and ktrace ability.
PR: 222861 Reviewed by: trasz MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D20178
show more ...
|