aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorBrooks Davis <brooks@FreeBSD.org>2018-03-27 15:20:03 +0000
committerBrooks Davis <brooks@FreeBSD.org>2018-03-27 15:20:03 +0000
commit34a77b974108eecc559c97b3ef170e3f18ffb644 (patch)
treeaf4d51237029eeac6c7bd3bc6f037b8d302626b5 /sys
parent2cb2ba6df8e31d389fd4bbfa73f0e6227dccb056 (diff)
downloadsrc-34a77b974108eecc559c97b3ef170e3f18ffb644.tar.gz
src-34a77b974108eecc559c97b3ef170e3f18ffb644.zip
Move uio enums to sys/_uio.h.
Include _uio.h instead of uio.h in several headers to reduce header polution. Fix a few places that relied on header polution to get the uio.h header. I have not moved struct uio as many more things that use it rely on header polution to get other definitions from uio.h. Reviewed by: cem, kib, markj Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D14811
Notes
Notes: svn path=/head/; revision=331621
Diffstat (limited to 'sys')
-rw-r--r--sys/compat/freebsd32/freebsd32_ioctl.c1
-rw-r--r--sys/dev/md/md.c1
-rw-r--r--sys/kern/tty_pts.c1
-rw-r--r--sys/kern/uipc_syscalls.c1
-rw-r--r--sys/sys/_uio.h52
-rw-r--r--sys/sys/imgact.h2
-rw-r--r--sys/sys/namei.h2
-rw-r--r--sys/sys/syscallsubr.h7
-rw-r--r--sys/sys/uio.h12
9 files changed, 63 insertions, 16 deletions
diff --git a/sys/compat/freebsd32/freebsd32_ioctl.c b/sys/compat/freebsd32/freebsd32_ioctl.c
index 96748a223545..4a5476849f2e 100644
--- a/sys/compat/freebsd32/freebsd32_ioctl.c
+++ b/sys/compat/freebsd32/freebsd32_ioctl.c
@@ -52,6 +52,7 @@ __FBSDID("$FreeBSD$");
#include <sys/sysent.h>
#include <sys/sysproto.h>
#include <sys/systm.h>
+#include <sys/uio.h>
#include <compat/freebsd32/freebsd32.h>
#include <compat/freebsd32/freebsd32_ioctl.h>
diff --git a/sys/dev/md/md.c b/sys/dev/md/md.c
index 0f494a2fa1d6..d976ced2391b 100644
--- a/sys/dev/md/md.c
+++ b/sys/dev/md/md.c
@@ -89,6 +89,7 @@
#include <sys/sched.h>
#include <sys/sf_buf.h>
#include <sys/sysctl.h>
+#include <sys/uio.h>
#include <sys/vnode.h>
#include <sys/disk.h>
diff --git a/sys/kern/tty_pts.c b/sys/kern/tty_pts.c
index 5bbef4280462..0a7986e0c3a9 100644
--- a/sys/kern/tty_pts.c
+++ b/sys/kern/tty_pts.c
@@ -64,6 +64,7 @@ __FBSDID("$FreeBSD$");
#include <sys/systm.h>
#include <sys/tty.h>
#include <sys/ttycom.h>
+#include <sys/uio.h>
#include <sys/user.h>
#include <machine/stdarg.h>
diff --git a/sys/kern/uipc_syscalls.c b/sys/kern/uipc_syscalls.c
index 90da323d752b..40df23c9bd0a 100644
--- a/sys/kern/uipc_syscalls.c
+++ b/sys/kern/uipc_syscalls.c
@@ -58,6 +58,7 @@ __FBSDID("$FreeBSD$");
#include <sys/socket.h>
#include <sys/socketvar.h>
#include <sys/syscallsubr.h>
+#include <sys/uio.h>
#ifdef KTRACE
#include <sys/ktrace.h>
#endif
diff --git a/sys/sys/_uio.h b/sys/sys/_uio.h
new file mode 100644
index 000000000000..18612ed7367b
--- /dev/null
+++ b/sys/sys/_uio.h
@@ -0,0 +1,52 @@
+/*-
+ * SPDX-License-Identifier: BSD-3-Clause
+ *
+ * Copyright (c) 1982, 1986, 1993, 1994
+ * The Regents of the University of California. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * @(#)uio.h 8.5 (Berkeley) 2/22/94
+ * $FreeBSD$
+ */
+
+#ifndef _SYS__UIO_H_
+#define _SYS__UIO_H_
+
+#if __BSD_VISIBLE
+enum uio_rw {
+ UIO_READ,
+ UIO_WRITE
+};
+
+/* Segment flag values. */
+enum uio_seg {
+ UIO_USERSPACE, /* from user data space */
+ UIO_SYSSPACE, /* from system space */
+ UIO_NOCOPY /* don't copy, already in object */
+};
+#endif /* __BSD_VISIBLE */
+
+#endif /* !_SYS__UIO_H_ */
diff --git a/sys/sys/imgact.h b/sys/sys/imgact.h
index 54c4020f70a5..309ba0ee5663 100644
--- a/sys/sys/imgact.h
+++ b/sys/sys/imgact.h
@@ -34,7 +34,7 @@
#ifndef _SYS_IMGACT_H_
#define _SYS_IMGACT_H_
-#include <sys/uio.h>
+#include <sys/_uio.h>
#include <vm/vm.h>
diff --git a/sys/sys/namei.h b/sys/sys/namei.h
index 8ccfee292bd4..f2c2f7543741 100644
--- a/sys/sys/namei.h
+++ b/sys/sys/namei.h
@@ -38,7 +38,7 @@
#include <sys/caprights.h>
#include <sys/filedesc.h>
#include <sys/queue.h>
-#include <sys/uio.h>
+#include <sys/_uio.h>
struct componentname {
/*
diff --git a/sys/sys/syscallsubr.h b/sys/sys/syscallsubr.h
index d03595286694..33e16c1f7f0c 100644
--- a/sys/sys/syscallsubr.h
+++ b/sys/sys/syscallsubr.h
@@ -31,13 +31,14 @@
#define _SYS_SYSCALLSUBR_H_
#include <sys/signal.h>
-#include <sys/uio.h>
#include <sys/socket.h>
#include <sys/mac.h>
#include <sys/mount.h>
#include <sys/_cpuset.h>
#include <sys/_domainset.h>
+#include <sys/_uio.h>
+struct __wrusage;
struct file;
struct filecaps;
enum idtype;
@@ -55,12 +56,12 @@ struct pollfd;
struct ogetdirentries_args;
struct rlimit;
struct rusage;
+struct sched_param;
union semun;
struct sockaddr;
struct stat;
struct thr_param;
-struct sched_param;
-struct __wrusage;
+struct uio;
int kern___getcwd(struct thread *td, char *buf, enum uio_seg bufseg,
size_t buflen, size_t path_max);
diff --git a/sys/sys/uio.h b/sys/sys/uio.h
index 84f9520caf4d..33398dba99e6 100644
--- a/sys/sys/uio.h
+++ b/sys/sys/uio.h
@@ -38,6 +38,7 @@
#include <sys/cdefs.h>
#include <sys/_types.h>
#include <sys/_iovec.h>
+#include <sys/_uio.h>
#ifndef _SSIZE_T_DECLARED
typedef __ssize_t ssize_t;
@@ -49,17 +50,6 @@ typedef __off_t off_t;
#define _OFF_T_DECLARED
#endif
-#if __BSD_VISIBLE
-enum uio_rw { UIO_READ, UIO_WRITE };
-
-/* Segment flag values. */
-enum uio_seg {
- UIO_USERSPACE, /* from user data space */
- UIO_SYSSPACE, /* from system space */
- UIO_NOCOPY /* don't copy, already in object */
-};
-#endif
-
#ifdef _KERNEL
struct uio {