History log of /freebsd/sys/amd64/linux32/linux.h (Results 1 – 25 of 164)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: release/14.0.0
# 2a1cf1b6 05-Sep-2023 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Deduplicate mmap2

To help porting the Linux emulation layer to a new platforms start using
Linux names for conditional builds instead of architecture-specific ifdefs.

MFC after: 1 week


# 524c9acc 20-Aug-2023 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Replace linux32_copyiniov by freebsd32_copyiniov

MFC after: 1 month


# c987ff4d 20-Aug-2023 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Replace linux32_copyinuio by freebsd32_copyinuio

MFC after: 1 month


# 95ee2897 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: two-line .h pattern

Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/


# 3d0addcd 18-May-2023 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Make ptrace_pokeusr machine dependent

Differential Revision: https://reviews.freebsd.org/D40096
MFC after: 1 week


# dd2a6cd7 18-May-2023 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Make ptrace_peekusr machine dependend

And partially implement it for x86_64.

Differential Revision: https://reviews.freebsd.org/D40095
MFC after: 1 week


# 80d8a4a0 28-Apr-2023 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Make struct stat64 to match Linux actual one


# 19973638 28-Apr-2023 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Move dev_t type declaration under /compat/linux

As of version 2.6.0 of the Linux kernel, dev_t is a 32-bit unsigned integer
on all platforms. Move it into the MI linux.h under /compat/linu

linux(4): Move dev_t type declaration under /compat/linux

As of version 2.6.0 of the Linux kernel, dev_t is a 32-bit unsigned integer
on all platforms. Move it into the MI linux.h under /compat/linux.

show more ...


# e0bfe0d6 28-Apr-2023 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Make struct newstat to match actual Linux one

In the struct stat the st_dev, st_rdev are unsigned long.


# a408fc09 28-Apr-2023 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Rename obsolete old struct l_stat to struct l_old_stat


# 56c5230a 22-Apr-2023 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Fix LINUX_AT_COUNT comments

Differential Revision: https://reviews.freebsd.org/D39645
MFC after: 1 month


# 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
# cabbfb60 04-Mar-2023 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Reduce code duplication between MD files

Move struct ifnet definitions under compat/linux.

Reviewed by: emaste
Differential Revision: https://reviews.freebsd.org/D38791


# 575e48f1 01-Feb-2023 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Deduplicate MI futex structures.

MFC after: 1 week


Revision tags: release/12.4.0
# d416ee86 22-Jun-2022 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): To reuse MD linux.h hide kernel dependencies unde _KERNEL constraint

MFC after: 2 weeks


# 2ca34847 30-May-2022 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Reduce duplication between MD parts of the Linuxulator

Move sigprocmask actions defines under compat/linux,
they are identical across all Linux architectures.

MFC after: 2 weeks


# 0e26e54b 28-May-2022 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Handle 64-bit SO_TIMESTAMP for 32-bit binaries

To solve y2k38 problem in the recvmsg syscall the new SO_TIMESTAMP
constant were added on v5.1 Linux kernel. So, old 32-bit binaries
that kno

linux(4): Handle 64-bit SO_TIMESTAMP for 32-bit binaries

To solve y2k38 problem in the recvmsg syscall the new SO_TIMESTAMP
constant were added on v5.1 Linux kernel. So, old 32-bit binaries
that knows only 32-bit time_t uses the old value of the constant,
and binaries that knows 64-bit time_t uses the new constant.

To determine what size of time_t type is expected by the user-space,
store requested value (SO_TIMESTAMP) in the process emuldata structure.

MFC after: 2 weeks

show more ...


# af557e64 15-May-2022 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Rework the definition of struct siginfo to match Linux actual one

Rework the defintion of struct siginfo so that the array padding
struct siginfo to SI_MAX_SIZE can be placed in a union al

linux(4): Rework the definition of struct siginfo to match Linux actual one

Rework the defintion of struct siginfo so that the array padding
struct siginfo to SI_MAX_SIZE can be placed in a union along side of the
rest of the struct siginfo members. The result is that we no longer need
the __ARCH_SI_PREAMBLE_SIZE or SI_PAD_SIZE definitions.

Move struct siginfo definition under /compat/linux to reduce MD part.
To avoid headers polution include linux_siginfo.h in the MD linux.h

MFC after: 2 weeks

show more ...


# 21f24617 15-May-2022 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Move sigframe definitions to separate headers

The signal trampoine-related definitions are used only in the MD part
of code, wherefore moved from everywhere used linux.h to separate MD
hea

linux(4): Move sigframe definitions to separate headers

The signal trampoine-related definitions are used only in the MD part
of code, wherefore moved from everywhere used linux.h to separate MD
headers.

MFC after: 2 weeks

show more ...


# ba279bcd 15-May-2022 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Cleanup signal trampolines

This is the first stage of a signal trampolines refactoring.

From trampolines retired emulation of the 'call' instruction, which is
replaced by direct call of a

linux(4): Cleanup signal trampolines

This is the first stage of a signal trampolines refactoring.

From trampolines retired emulation of the 'call' instruction, which is
replaced by direct call of a signal handler. The signal handler address
is in the register.

The previous trampoline implemenatation used semi-Linux-way to call
a signal handler via the 'jmp' instruction. Wherefore the trampoline
emulated a 'call' instruction to into the stack the return address for
signal handler's 'ret' instruction. Wherefore handmade DWARD annotations
was used.

While here rephrased and removed excessive comments.

MFC after: 2 weeks

show more ...


Revision tags: release/13.1.0
# d5dc757e 31-Mar-2022 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Add compat.linux32.emulate_i386 knob.

Historically 32-bit Linuxulator under amd64 emulated the real i386
behavior. Since 3d8dd983 the old i386 Linux world can't be used under
amd64 Linuxul

linux(4): Add compat.linux32.emulate_i386 knob.

Historically 32-bit Linuxulator under amd64 emulated the real i386
behavior. Since 3d8dd983 the old i386 Linux world can't be used under
amd64 Linuxulator as it don't know anything about amd64 machine (which
is returned now by newuname() syscall). So, add a knob to allow to swith
the behavior and use i386 Linux binaries on amd64.
Set knob to the new behavior as I think this is common to the modern
Linux distros.

Reviewed by: Pau Amma (doc), emaste
Differential revision: https://reviews.freebsd.org/D34708
MFC after: 2 weeks

show more ...


Revision tags: release/12.3.0
# 3417c298 23-Oct-2021 Edward Tomasz Napierala <trasz@FreeBSD.org>

linux: Constify bsd_to_linux_regset()

No functional changes.

Reviewed By: emaste
Sponsored By: EPSRC
Differential Revision: https://reviews.freebsd.org/D32599


# 4aae1334 25-Jun-2021 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Make vDSO defines private.

Hide the vDSO defines to the linux32_sysvec as they are not intended to
be used outside of it. Fix LINUX32_PS_STRINGS, use the size of
struct linux32_ps_strings

linux(4): Make vDSO defines private.

Hide the vDSO defines to the linux32_sysvec as they are not intended to
be used outside of it. Fix LINUX32_PS_STRINGS, use the size of
struct linux32_ps_strings instead of a numeric constant.

MFC after: 2 weeks

show more ...


# 26795a03 22-Jun-2021 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Rework Linux ppoll system call.

For now the Linux emulation layer uses in kernel ppoll(2) without
conversion of user supplied fd 'events', and does not convert the
kernel supplied fd 'reve

linux(4): Rework Linux ppoll system call.

For now the Linux emulation layer uses in kernel ppoll(2) without
conversion of user supplied fd 'events', and does not convert the
kernel supplied fd 'revents'.

At least POLLRDHUP is handled by FreeBSD differently than by
Linux. Seems that Linux silencly ignores POLLRDHUP on non socket fd's
unlike FreeBSD, which does more strictly check and fails.

Rework the Linux ppoll, using kern_poll and converting 'events'
and 'revents' values.
While here, move poll events defines to the MI part of code as they
mostly identical on all arches except arm.

Differential Revision: https://reviews.freebsd.org/D30716
MFC after: 2 weeks

show more ...


# bfcce1a9 07-Jun-2021 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): add struct timespec64 definition and conversion routine for
future use.

MFC after: 2 weeks


1234567