freebsd-dev/sys/compat
Ka Ho Ng 0dc332bff2 Add fspacectl(2), vn_deallocate(9) and VOP_DEALLOCATE(9).
fspacectl(2) is a system call to provide space management support to
userspace applications. VOP_DEALLOCATE(9) is a VOP call to perform the
deallocation. vn_deallocate(9) is a public KPI for kmods' use.

The purpose of proposing a new system call, a KPI and a VOP call is to
allow bhyve or other hypervisor monitors to emulate the behavior of SCSI
UNMAP/NVMe DEALLOCATE on a plain file.

fspacectl(2) comprises of cmd and flags parameters to specify the
space management operation to be performed. Currently cmd has to be
SPACECTL_DEALLOC, and flags has to be 0.

fo_fspacectl is added to fileops.
VOP_DEALLOCATE(9) is added as a new VOP call. A trivial implementation
of VOP_DEALLOCATE(9) is provided.

Sponsored by:	The FreeBSD Foundation
Reviewed by:	kib
Differential Revision:	https://reviews.freebsd.org/D28347
2021-08-05 23:20:42 +08:00
..
cloudabi umtx: Split umtx.h on two counterparts. 2021-07-29 12:41:29 +03:00
cloudabi32 regen syscall files after d51198d63b63 2021-05-13 14:09:58 -04:00
cloudabi64 regen syscall files after d51198d63b63 2021-05-13 14:09:58 -04:00
freebsd32 Add fspacectl(2), vn_deallocate(9) and VOP_DEALLOCATE(9). 2021-08-05 23:20:42 +08:00
ia32 Do not call FreeBSD-ABI specific code for all ABIs 2021-07-07 14:12:07 +03:00
lindebugfs Add emulation support for the Linux kcov(4) ioctl API. 2020-09-04 00:12:28 +00:00
linprocfs linprocfs: Fixup vDSO name in the procmaps after 9931033bbf. 2021-07-20 10:04:20 +03:00
linsysfs linsysfs: create /sys/bus/ and /sys/subsystem/ 2021-03-11 15:50:51 +00:00
linux linux(4): Eliminate a now unused includes after futexes refactoring. 2021-07-29 12:56:39 +03:00
linuxkpi/common LinuxKPI: fix bug in le32p_replace_bits() 2021-07-31 22:15:35 +00:00
x86bios Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00