aboutsummaryrefslogtreecommitdiff
path: root/sys/sys/filio.h
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2020-09-09 22:12:51 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2020-09-09 22:12:51 +0000
commitd301b3580f60be417581db4b592f88ce9c916e4b (patch)
treedcc9c17a38f1081490426b2cf4ef0c0cd3d774d3 /sys/sys/filio.h
parentaa8f9f90ff9ae6299edbf4073fd81900eed7a7fd (diff)
downloadsrc-d301b3580f60be417581db4b592f88ce9c916e4b.tar.gz
src-d301b3580f60be417581db4b592f88ce9c916e4b.zip
Support for userspace non-transparent superpages (largepages).
Created with shm_open2(SHM_LARGEPAGE) and then configured with FIOSSHMLPGCNF ioctl, largepages posix shared memory objects guarantee that all userspace mappings of it are served by superpage non-managed mappings. Only amd64 for now, both 2M and 1G superpages can be requested, the later requires CPU feature. Reviewed by: markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D24652
Notes
Notes: svn path=/head/; revision=365522
Diffstat (limited to 'sys/sys/filio.h')
-rw-r--r--sys/sys/filio.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/sys/filio.h b/sys/sys/filio.h
index c5cf3d4432e9..3eea7a7acd60 100644
--- a/sys/sys/filio.h
+++ b/sys/sys/filio.h
@@ -70,6 +70,9 @@ struct fiobmap2_arg {
};
/* Get the file's bmap info for the logical block bn. */
#define FIOBMAP2 _IOWR('f', 99, struct fiobmap2_arg)
+/* POSIX shm largepage set/get config */
+#define FIOSSHMLPGCNF _IOW('f', 100, struct shm_largepage_conf)
+#define FIOGSHMLPGCNF _IOR('f', 101, struct shm_largepage_conf)
#ifdef _KERNEL
#ifdef COMPAT_FREEBSD32