@@ -2,11 +2,15 @@
#ifndef __LINUX_NET_AFUNIX_H
#define __LINUX_NET_AFUNIX_H
+#include <linux/atomic.h>
#include <linux/mutex.h>
+#include <linux/net.h>
+#include <linux/path.h>
#include <linux/refcount.h>
-#include <linux/socket.h>
-#include <linux/un.h>
+#include <linux/spinlock.h>
+#include <linux/wait.h>
#include <net/sock.h>
+#include <uapi/linux/un.h>
#if IS_ENABLED(CONFIG_UNIX)
struct unix_sock *unix_get_socket(struct file *filp);
@@ -92,7 +92,6 @@
#include <linux/module.h>
#include <linux/mount.h>
#include <linux/namei.h>
-#include <linux/net.h>
#include <linux/netdevice.h>
#include <linux/poll.h>
#include <linux/proc_fs.h>
@@ -110,12 +109,10 @@
#include <linux/string.h>
#include <linux/termios.h>
#include <linux/uaccess.h>
-#include <linux/un.h>
#include <net/af_unix.h>
#include <net/checksum.h>
#include <net/net_namespace.h>
#include <net/scm.h>
-#include <net/sock.h>
#include <net/tcp_states.h>
#include "af_unix.h"
@@ -3,13 +3,10 @@
#include <linux/module.h>
#include <linux/skbuff.h>
#include <linux/sock_diag.h>
-#include <linux/spinlock.h>
#include <linux/types.h>
-#include <linux/uidgid.h>
#include <linux/unix_diag.h>
#include <net/af_unix.h>
#include <net/netlink.h>
-#include <net/sock.h>
#include <net/tcp_states.h>
#include "af_unix.h"
@@ -66,18 +66,13 @@
#include <linux/file.h>
#include <linux/fs.h>
#include <linux/kernel.h>
-#include <linux/mutex.h>
-#include <linux/net.h>
#include <linux/netdevice.h>
#include <linux/proc_fs.h>
#include <linux/skbuff.h>
#include <linux/socket.h>
#include <linux/string.h>
-#include <linux/un.h>
-#include <linux/wait.h>
#include <net/af_unix.h>
#include <net/scm.h>
-#include <net/sock.h>
#include <net/tcp_states.h>
#include "af_unix.h"
@@ -4,7 +4,6 @@
#include <linux/bpf.h>
#include <linux/skmsg.h>
#include <net/af_unix.h>
-#include <net/sock.h>
#include "af_unix.h"
include/net/af_unix.h indirectly includes some definitions for structs. Let's include such headers explicitly. linux/atomic.h : scm_stat.nr_fds linux/net.h : unix_sock.peer_wq linux/path.h : unix_sock.path linux/spinlock.h : unix_sock.lock linux/wait.h : unix_sock.peer_wake uapi/linux/un.h : unix_address.name[] linux/socket.h is removed as the structs there are not used directly, and linux/un.h is clarified with uapi as un.h only exists under include/uapi. While at it, duplicate headers are removed from .c files. Signed-off-by: Kuniyuki Iwashima <kuniyu@amazon.com> --- include/net/af_unix.h | 8 ++++++-- net/unix/af_unix.c | 3 --- net/unix/diag.c | 3 --- net/unix/garbage.c | 5 ----- net/unix/unix_bpf.c | 1 - 5 files changed, 6 insertions(+), 14 deletions(-)