freebsd-dev/sys/compat/linux
Dmitry Chagin 166e2e5a9e linux(4): Uniformly dev_t arguments translation
The two main uses of dev_t are in struct stat and as a parameter of the
mknod system calls.
As of version 2.6.0 of the Linux kernel, dev_t is a 32-bit quantity
with 12 bits set asaid for the major number and 20 for the minor number.
The in-kernel dev_t encoded as MMMmmmmm, where M is a hex digit of the
major number and m is a hex digit of the minor number.
The user-space dev_t encoded as mmmM MMmm, where M and m is the major
and minor numbers accordingly. This is downward compatible with legacy
systems where dev_t is 16 bits wide, encoded as MMmm.
In glibc dev_t is a 64-bit quantity, with 32-bit major and minor numbers,
encoded as MMMM Mmmm mmmM MMmm. This is downward compatible with the Linux
kernel and with legacy systems where dev_t is 16 bits wide.
In the FreeBSD dev_t is a 64-bit quantity. The major and minor numbers
are encoded as MMMmmmMm, therefore conversion of the device numbers between
Linux user-space and FreeBSD kernel required.
2023-04-28 11:55:05 +03:00
..
check_error.d
check_internal_locks.d
linux_common.c linux(4): Cleanup includes under compat/linux 2023-02-14 17:46:32 +03:00
linux_common.h linux(4): Add a counterpart to linux_ifflags 2023-03-04 12:26:48 +03:00
linux_dtrace.h
linux_dummy.c linux(4): Implement close_range over native 2023-04-04 23:24:04 +03:00
linux_elf32.c
linux_elf64.c
linux_elf.c linux(4): Use inlined LINUX_KERNVER for tests to improve readability 2023-04-26 16:57:30 +03:00
linux_elf.h linux(4): Deduplicate linux_copyout_auxargs() 2023-04-22 22:16:02 +03:00
linux_emul.c linux(4): Cleanup includes under compat/linux 2023-02-14 17:46:32 +03:00
linux_emul.h linux(4): Microoptimize linux_elf.h for future use. 2023-02-02 17:58:06 +03:00
linux_errno.c linux(4): Cleanup includes under compat/linux 2023-02-14 17:46:32 +03:00
linux_errno.h
linux_errno.inc
linux_event.c linux(4): Rename linux_timer.h to linux_time.h 2023-02-14 17:46:33 +03:00
linux_event.h
linux_file.c linux(4): Add a dedicated statat() implementation 2023-04-28 11:55:04 +03:00
linux_file.h linux(4): Implement close_range over native 2023-04-04 23:24:04 +03:00
linux_fork.c linux(4): Cleanup includes under compat/linux 2023-02-14 17:46:32 +03:00
linux_fork.h
linux_futex.c linux(4): Rename linux_timer.h to linux_time.h 2023-02-14 17:46:33 +03:00
linux_futex.h linux(4): Deduplicate MI futex structures. 2023-02-01 21:57:04 +03:00
linux_getcwd.c linux(4): Cleanup includes under compat/linux 2023-02-14 17:46:32 +03:00
linux_ioctl.c linux(4): Drop excess assert that Linux IFNAMSIZ is equal to FreeBSD 2023-03-04 12:11:39 +03:00
linux_ioctl.h
linux_ipc64.h
linux_ipc.c linux(4): Rename linux_timer.h to linux_time.h 2023-02-14 17:46:33 +03:00
linux_ipc.h
linux_mib.c linux(4): Cleanup includes under compat/linux 2023-02-14 17:46:32 +03:00
linux_mib.h linux(4): Use inlined LINUX_KERNVER for tests to improve readability 2023-04-26 16:57:30 +03:00
linux_misc.c linux(4): Uniformly dev_t arguments translation 2023-04-28 11:55:05 +03:00
linux_misc.h linux(4): Cleanup sys/sysctl.h from linux_misc.h 2023-02-14 17:46:32 +03:00
linux_mmap.c linux(4): Cleanup includes under compat/linux 2023-02-14 17:46:32 +03:00
linux_mmap.h
linux_netlink.c net: replace IFF_KNOWSEPOCH with IFF_NEEDSEPOCH 2023-04-17 09:08:35 -07:00
linux_persona.h
linux_ptrace.c
linux_rseq.c
linux_siginfo.h linux(4): Add kernel signal code definitions 2022-05-19 19:55:56 +03:00
linux_signal.c linux(4): Use inlined LINUX_KERNVER for tests to improve readability 2023-04-26 16:57:30 +03:00
linux_signal.h linux(4): Trace Linux l_sigset_t. 2022-06-22 14:09:54 +03:00
linux_socket.c linux(4): Rename struct l_ifreq members names to avoid conflicts with FreeBSD 2023-03-04 12:11:38 +03:00
linux_socket.h linux(4): Rename struct l_ifreq members names to avoid conflicts with FreeBSD 2023-03-04 12:11:38 +03:00
linux_stats.c linux(4): Uniformly dev_t arguments translation 2023-04-28 11:55:05 +03:00
linux_sysctl.c linux(4): Cleanup includes under compat/linux 2023-02-14 17:46:32 +03:00
linux_sysproto.h
linux_time.c linux(4): Rename linux_timer.h to linux_time.h 2023-02-14 17:46:33 +03:00
linux_time.h linux(4): Rename linux_timer.h to linux_time.h 2023-02-14 17:46:33 +03:00
linux_timer.c linux(4): Rename linux_timer.h to linux_time.h 2023-02-14 17:46:33 +03:00
linux_uid16.c linux(4): Cleanup includes under compat/linux 2023-02-14 17:46:32 +03:00
linux_util.c linux(4): Uniformly dev_t arguments translation 2023-04-28 11:55:05 +03:00
linux_util.h linux(4): Move translate_vnhook_major_minor() into the Linux common module 2023-04-28 11:54:58 +03:00
linux_vdso_gtod.inc linux(4): Implement __vdso_time 2022-07-04 23:41:32 +03:00
linux_vdso.c linux(4): Cleanup includes under compat/linux 2023-02-14 17:46:32 +03:00
linux_vdso.h
linux_videodev2_compat.h
linux_videodev_compat.h
linux.c linux: Use the if_name() accessor to get loopback name 2023-03-07 09:47:01 -05:00
linux.h linux(4): Uniformly dev_t arguments translation 2023-04-28 11:55:05 +03:00
stats_timing.d
trace_futexes.d