Dmitry Chagin
bfae7fbaa2
linux(4): Fix 039e98e6.
...
The patch was about an year in my local queue and I still screwed up...
MFC after: 2 weeks
2022-05-09 21:45:51 +03:00
Dmitry Chagin
039e98e60c
linux(4): Change prctl syscall definition to match Linux actual one.
...
Otherwise argX conversion leads to an unexpected behaviour.
MFC after: 2 weeks
2022-05-09 21:09:39 +03:00
Dmitry Chagin
94f5f150ef
linux(4): Fix ppoll_time64 syscall definition.
...
Fixed my typo in ed61e0ce1d . Here tsp is a pointer to the 64-bit timespec.
MFC after: 2 weeks
2022-05-08 13:37:48 +03:00
Dmitry Chagin
f19c4e2341
linux(4): Change semtimedop syscall definition to match Linux actual one.
...
MFC after: 2 weeks
2022-05-06 20:01:43 +03:00
Dmitry Chagin
17ccda0039
linux(4): Change recvmmsg_time64 syscall definition to match Linux actual one.
...
MFC after: 2 weeks
2022-05-04 13:06:52 +03:00
Dmitry Chagin
16aefe5ba3
linux(4): Change timerfd_gettime64 syscall definition to match Linux actual one.
...
MFC after: 2 weeks
2022-05-04 13:06:51 +03:00
Dmitry Chagin
8545bcff31
linux(4): Change timerfd_settime64 syscall definition to match Linux actual one.
...
MFC after: 2 weeks
2022-05-04 13:06:50 +03:00
Dmitry Chagin
1508b1b6a0
linux(4): Change timer_settime64 syscall definition to match Linux actual one.
...
MFC after: 2 weeks
2022-05-04 13:06:48 +03:00
Dmitry Chagin
ccec96033c
linux(4): Change timer_gettime64 syscall definition to match Linux actual one.
...
MFC after: 2 weeks
2022-05-04 13:06:47 +03:00
Dmitry Chagin
7b520c0b3c
linux(4): Change sched_rr_get_interval_time64 syscall definition to match Linux actual one.
...
MFC after: 2 weeks
2022-05-04 13:06:45 +03:00
Dmitry Chagin
81b0b7dc0c
linux(4): Change epoll_pwait2 syscall definition to match Linux actual one.
...
MFC after: 2 weeks
2022-04-26 19:35:57 +03:00
Dmitry Chagin
f202f35db0
linux(4): Change rseq syscall definition to match Linux actual one.
...
MFC after: 2 weeks
2022-04-26 19:35:54 +03:00
Dmitry Chagin
17913b0b6b
linux(4): Implement clone3 system call.
...
clone3 system call is used by glibc-2.34.
Differential revision: https://reviews.freebsd.org/D31475
MFC after: 2 weeks
2021-08-12 11:49:36 +03:00
Dmitry Chagin
f1c450492f
linux(4): Change clone syscall definition to match Linux actual one.
...
Differential revision: https://reviews.freebsd.org/D31473
MFC after: 2 weeks
2021-08-12 11:46:36 +03:00
Dmitry Chagin
13d79be995
linux(4): Implement faccessat2 system call.
...
It's used by bash on arm64 with glibc-2.32.
Reviewed by: trasz
Differential Revision: https://reviews.freebsd.org/D31345
MFC after: 2 weeks
2021-08-12 11:40:42 +03:00
Dmitry Chagin
2eff670fde
linux(4): Implement poll system call via linux_common_ppol()
...
for the sake of converting events to/from native.
MFC after: 2 weeks
2021-06-22 08:07:46 +03:00
Dmitry Chagin
ed61e0ce1d
linux(4): Implement ppoll_time64 system call.
...
MFC after: 2 weeks
2021-06-10 15:18:46 +03:00
Dmitry Chagin
f6d075ecd7
linux(4): Implement pselect6_time64 system call.
...
MFC after: 2 weeks
2021-06-10 15:03:30 +03:00
Dmitry Chagin
db4a1f331b
linux(4): Implement rt_sigtimedwait_time64 system call.
...
It still does not work as intended, awaits D30675.
MFC after: 2 weeks
2021-06-10 14:51:30 +03:00
Dmitry Chagin
2e46d0c3d9
linux(4): Implement futex_time64 system call.
...
MFC after: 2 weeks
2021-06-10 14:27:06 +03:00
Dmitry Chagin
3c1de151e3
linux(4): Change Linux futex syscall definition to match Linux actual one.
...
MFC after: 2 weeks
2021-06-10 14:00:00 +03:00
Dmitry Chagin
0f8dab4540
linux(4): Fix timeout parameter of rt_sigtimedwait syscall, which is
...
timespec not a timeval.
MFC after: 2 weeks
2021-06-07 05:35:35 +03:00
Dmitry Chagin
6501370a7d
linux(4): Implement clock_nanosleep_time64 system call.
...
MFC after: 2 weeks
2021-06-07 05:26:48 +03:00
Dmitry Chagin
187715a420
linux(4): Implement clock_getres_time64 system call.
...
MFC after: 2 weeks
2021-06-07 05:21:32 +03:00
Dmitry Chagin
19f9a0e4df
linux(4): Implement clock_settime64 system call.
...
MFC after: 2 weeks
2021-06-07 05:11:25 +03:00
Dmitry Chagin
99b6f43069
linux(4): Implement clock_gettime64 system call.
...
MFC after: 2 weeks
2021-06-07 05:04:42 +03:00
Dmitry Chagin
e4bffb80bb
linux(4): Implement utimensat_time64 system call.
...
MFC after: 2 weeks
2021-06-07 04:54:30 +03:00
Edward Tomasz Napierala
6d926e850d
linux: add new syscall numbers
...
Sponsored By: EPSRC
Differential Revision: https://reviews.freebsd.org/D30193
2021-05-28 09:02:16 +01:00
Conrad Meyer
de774e422e
linux(4): Implement name_to_handle_at(), open_by_handle_at()
...
They are similar to our getfhat(2) and fhopen(2) syscalls.
Differential Revision: https://reviews.freebsd.org/D27111
2020-11-17 19:51:47 +00:00
Edward Tomasz Napierala
8d1d017175
Add a trivial linux(4) splice(2) implementation, which simply
...
returns EINVAL. Fixes grep (grep-3.1-2build1).
PR: kern/218699
Reported by: avos
Reviewed by: emaste
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D25636
2020-07-18 11:28:40 +00:00
Edward Tomasz Napierala
308e194cbf
Add proper types for linux message queue syscalls; mostly taken
...
from 32-bit Linuxulator.
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D25386
2020-06-27 14:42:08 +00:00
Edward Tomasz Napierala
36507f85dc
Add syscall definitions for linux xattr syscalls.
...
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D25387
2020-06-27 14:39:44 +00:00
Edward Tomasz Napierala
5ac2674278
Adapt linuxulator syscalls.master files to the new layout.
...
No functional changes.
Reviewed by: brooks
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D25381
2020-06-21 10:09:34 +00:00
Edward Tomasz Napierala
52c81be11a
Add linux_madvise(2) instead of having Linux apps call the native
...
FreeBSD madvise(2) directly. While some of the flag values match,
most don't.
PR: kern/230160
Reported by: markj
Reviewed by: markj
Discussed with: brooks, kib
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D25272
2020-06-20 18:29:22 +00:00
Ed Maste
fc7510aef7
linuxulator: implement sendfile
...
Submitted by: Bora Özarslan <borako.ozarslan@gmail.com>
Submitted by: Yang Wang <2333@outlook.jp>
Reviewed by: markj
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D19917
2020-02-05 16:53:02 +00:00
Mark Johnston
149afbf3ba
Fix 64-bit syscall argument fetching in 32-bit Linux syscall handlers.
...
The Linux32 system call argument fetcher places each argument (passed in
registers in the Linux x86 system call convention) into an entry in the
generic system call args array. Each member of this array is 8 bytes
wide, so this approach is broken for system calls that take off_t
arguments.
Fix the problem by splitting l_loff_t arguments in the 32-bit system
call descriptions, the same as we do for FreeBSD32. Change entry points
to handle this using the PAIR32TO64 macro.
Move linux_ftruncate64() into compat/linux.
PR: 243155
Reported by: Alex S <iwtcex@gmail.com>
Reviewed by: kib (previous version)
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D23210
2020-01-21 17:28:22 +00:00
Edward Tomasz Napierala
a8bfc7a85c
Fix definitions for Linux getcpu(2).
...
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
2019-12-31 15:57:29 +00:00
Edward Tomasz Napierala
0610f417a4
Fix definitions for linuxulator's sync_file_range(2).
...
Reviewed by: brooks, emaste
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D22371
2019-12-14 13:30:43 +00:00
Ed Maste
427b1baec0
make linux_renameat2 args consistent with linux_renameat
...
Use 'dfd' consistently for a directory fd.
2019-09-11 12:58:06 +00:00
Dmitry Chagin
c034ecf316
Since r339624 HEAD does not need for backslashes in syscalls.master,
...
however to make a merge r345471 to the stable add backslashes
to the syscalls.master.
MFC after: 3 days
2019-04-23 18:10:46 +00:00
Dmitry Chagin
f730d606d5
Update syscall.master to 5.0.
...
For 32-bit Linuxulator, ipc() syscall was historically
the entry point for the IPC API. Starting in Linux 4.18, direct
syscalls are provided for the IPC. Enable it.
MFC after: 1 month
2019-03-24 14:50:02 +00:00
Dmitry Chagin
7dabf89bcf
Linux between 4.18 and 5.0 split IPC system calls.
...
In preparation for doing this in the Linuxulator modify our linux_shmat()
to match actual Linux shmat() system call.
MFC after: 1 month
2019-03-24 14:44:35 +00:00
Brooks Davis
6469bdcdb6
Move most of the contents of opt_compat.h to opt_global.h.
...
opt_compat.h is mentioned in nearly 180 files. In-progress network
driver compabibility improvements may add over 100 more so this is
closer to "just about everywhere" than "only some files" per the
guidance in sys/conf/options.
Keep COMPAT_LINUX32 in opt_compat.h as it is confined to a subset of
sys/compat/linux/*.c. A fake _COMPAT_LINUX option ensure opt_compat.h
is created on all architectures.
Move COMPAT_LINUXKPI to opt_dontuse.h as it is only used to control the
set of compiled files.
Reviewed by: kib, cem, jhb, jtl
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D14941
2018-04-06 17:35:35 +00:00
Ed Maste
315fbaeca2
Correct pseudo misspelling in sys/ comments
...
contrib code and #define in intel_ata.h unchanged.
2018-02-23 18:15:50 +00:00
Ed Maste
eae594f7d5
Correct proper nouns in the Linuxulator
...
- Capitalize Linux
- Spell FreeBSD out in full
- Address some style(9) on changed lines
Sponsored by: Turing Robotic Industries Inc.
2018-02-22 02:24:17 +00:00
Ed Maste
132f90c660
Linuxolator whitespace cleanup
...
A version of each of the MD files by necessity exists for each CPU
architecture supported by the Linuxolator. Clean these up so that new
architectures do not inherit whitespace issues.
Clean up shared Linuxolator files while here.
Sponsored by: Turing Robotic Industries Inc.
2018-02-05 17:29:12 +00:00
Brooks Davis
5cd667e65f
Disable vim syntax highlighting.
...
Vim's default pick doesn't understand that ';' is a comment character
and the result looks horrible.
Reviewed by: emaste
2017-11-28 18:23:17 +00:00
Mahdi Mokhtari
8049c6bfb8
Add UNIMPLEMENTED() placeholder macro for
...
the syscalls that are not implemented in Linux kernel itself.
Cleanup DUMMY() macros.
Reviewed by: dchagin, trasz
Approved by: dchagin
MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D9804
2017-03-06 18:11:38 +00:00
Dmitry Chagin
f8ae1bb64d
Change Linux epoll_pwait syscall definition to match Linux actual one.
...
MFC after: 1 month
2017-02-26 19:57:18 +00:00
Dmitry Chagin
1064d53fde
Change Linuxulator timerfd syscalls definition to match actual Linux one.
...
MFC after: 1 month
2017-02-26 09:35:44 +00:00