Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 68e8b849 authored by Björn Töpel's avatar Björn Töpel Committed by Alexei Starovoitov
Browse files

net: initial AF_XDP skeleton



Buildable skeleton of AF_XDP without any functionality. Just what it
takes to register a new address family.

Signed-off-by: default avatarBjörn Töpel <bjorn.topel@intel.com>
Signed-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
parent 03f5781b
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -15424,6 +15424,14 @@ T: git git://linuxtv.org/media_tree.git
S:	Maintained
F:	drivers/media/tuners/tuner-xc2028.*

XDP SOCKETS (AF_XDP)
M:	Björn Töpel <bjorn.topel@intel.com>
M:	Magnus Karlsson <magnus.karlsson@intel.com>
L:	netdev@vger.kernel.org
S:	Maintained
F:	kernel/bpf/xskmap.c
F:	net/xdp/

XEN BLOCK SUBSYSTEM
M:	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
M:	Roger Pau Monné <roger.pau@citrix.com>
+4 −1
Original line number Diff line number Diff line
@@ -207,8 +207,9 @@ struct ucred {
				 * PF_SMC protocol family that
				 * reuses AF_INET address family
				 */
#define AF_XDP		44	/* XDP sockets			*/

#define AF_MAX		44	/* For now.. */
#define AF_MAX		45	/* For now.. */

/* Protocol families, same as address families. */
#define PF_UNSPEC	AF_UNSPEC
@@ -257,6 +258,7 @@ struct ucred {
#define PF_KCM		AF_KCM
#define PF_QIPCRTR	AF_QIPCRTR
#define PF_SMC		AF_SMC
#define PF_XDP		AF_XDP
#define PF_MAX		AF_MAX

/* Maximum queue length specifiable by listen.  */
@@ -338,6 +340,7 @@ struct ucred {
#define SOL_NFC		280
#define SOL_KCM		281
#define SOL_TLS		282
#define SOL_XDP		283

/* IPX options */
#define IPX_TYPE	1
+1 −0
Original line number Diff line number Diff line
@@ -59,6 +59,7 @@ source "net/tls/Kconfig"
source "net/xfrm/Kconfig"
source "net/iucv/Kconfig"
source "net/smc/Kconfig"
source "net/xdp/Kconfig"

config INET
	bool "TCP/IP networking"
+8 −4
Original line number Diff line number Diff line
@@ -226,7 +226,8 @@ static struct lock_class_key af_family_kern_slock_keys[AF_MAX];
  x "AF_RXRPC" ,	x "AF_ISDN"     ,	x "AF_PHONET"   , \
  x "AF_IEEE802154",	x "AF_CAIF"	,	x "AF_ALG"      , \
  x "AF_NFC"   ,	x "AF_VSOCK"    ,	x "AF_KCM"      , \
  x "AF_QIPCRTR",	x "AF_SMC"	,	x "AF_MAX"
  x "AF_QIPCRTR",	x "AF_SMC"	,	x "AF_XDP"	, \
  x "AF_MAX"

static const char *const af_family_key_strings[AF_MAX+1] = {
	_sock_locks("sk_lock-")
@@ -262,7 +263,8 @@ static const char *const af_family_rlock_key_strings[AF_MAX+1] = {
  "rlock-AF_RXRPC" , "rlock-AF_ISDN"     , "rlock-AF_PHONET"   ,
  "rlock-AF_IEEE802154", "rlock-AF_CAIF" , "rlock-AF_ALG"      ,
  "rlock-AF_NFC"   , "rlock-AF_VSOCK"    , "rlock-AF_KCM"      ,
  "rlock-AF_QIPCRTR", "rlock-AF_SMC"     , "rlock-AF_MAX"
  "rlock-AF_QIPCRTR", "rlock-AF_SMC"     , "rlock-AF_XDP"      ,
  "rlock-AF_MAX"
};
static const char *const af_family_wlock_key_strings[AF_MAX+1] = {
  "wlock-AF_UNSPEC", "wlock-AF_UNIX"     , "wlock-AF_INET"     ,
@@ -279,7 +281,8 @@ static const char *const af_family_wlock_key_strings[AF_MAX+1] = {
  "wlock-AF_RXRPC" , "wlock-AF_ISDN"     , "wlock-AF_PHONET"   ,
  "wlock-AF_IEEE802154", "wlock-AF_CAIF" , "wlock-AF_ALG"      ,
  "wlock-AF_NFC"   , "wlock-AF_VSOCK"    , "wlock-AF_KCM"      ,
  "wlock-AF_QIPCRTR", "wlock-AF_SMC"     , "wlock-AF_MAX"
  "wlock-AF_QIPCRTR", "wlock-AF_SMC"     , "wlock-AF_XDP"      ,
  "wlock-AF_MAX"
};
static const char *const af_family_elock_key_strings[AF_MAX+1] = {
  "elock-AF_UNSPEC", "elock-AF_UNIX"     , "elock-AF_INET"     ,
@@ -296,7 +299,8 @@ static const char *const af_family_elock_key_strings[AF_MAX+1] = {
  "elock-AF_RXRPC" , "elock-AF_ISDN"     , "elock-AF_PHONET"   ,
  "elock-AF_IEEE802154", "elock-AF_CAIF" , "elock-AF_ALG"      ,
  "elock-AF_NFC"   , "elock-AF_VSOCK"    , "elock-AF_KCM"      ,
  "elock-AF_QIPCRTR", "elock-AF_SMC"     , "elock-AF_MAX"
  "elock-AF_QIPCRTR", "elock-AF_SMC"     , "elock-AF_XDP"      ,
  "elock-AF_MAX"
};

/*

net/xdp/Kconfig

0 → 100644
+7 −0
Original line number Diff line number Diff line
config XDP_SOCKETS
	bool "XDP sockets"
	depends on BPF_SYSCALL
	default n
	help
	  XDP sockets allows a channel between XDP programs and
	  userspace applications.
Loading