aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/protocol.h
diff options
context:
space:
mode:
authorVlad Yasevich <vyasevic@redhat.com>2012-11-15 03:49:22 -0500
committerDavid S. Miller <davem@davemloft.net>2012-11-15 17:39:24 -0500
commitc6b641a4c6b32f39db678c2441cb1ef824110d74 (patch)
tree251c4f988a2aca2b9b031afe192f3ae4705d3692 /include/net/protocol.h
parent808a8f884554f93315f663b2694addb4a177c578 (diff)
ipv6: Pull IPv6 GSO registration out of the module
Sing GSO support is now separate, pull it out of the module and make it its own init call. Remove the cleanup functions as they are no longer called. Signed-off-by: Vlad Yasevich <vyasevic@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/protocol.h')
-rw-r--r--include/net/protocol.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/include/net/protocol.h b/include/net/protocol.h
index 7019c1637848..2c90794c139d 100644
--- a/include/net/protocol.h
+++ b/include/net/protocol.h
@@ -25,6 +25,7 @@
25#define _PROTOCOL_H 25#define _PROTOCOL_H
26 26
27#include <linux/in6.h> 27#include <linux/in6.h>
28#include <linux/skbuff.h>
28#if IS_ENABLED(CONFIG_IPV6) 29#if IS_ENABLED(CONFIG_IPV6)
29#include <linux/ipv6.h> 30#include <linux/ipv6.h>
30#endif 31#endif
@@ -59,8 +60,6 @@ struct inet6_protocol {
59 60
60#define INET6_PROTO_NOPOLICY 0x1 61#define INET6_PROTO_NOPOLICY 0x1
61#define INET6_PROTO_FINAL 0x2 62#define INET6_PROTO_FINAL 0x2
62/* This should be set for any extension header which is compatible with GSO. */
63#define INET6_PROTO_GSO_EXTHDR 0x4
64#endif 63#endif
65 64
66struct net_offload { 65struct net_offload {
@@ -72,6 +71,8 @@ struct net_offload {
72 int (*gro_complete)(struct sk_buff *skb); 71 int (*gro_complete)(struct sk_buff *skb);
73 unsigned int flags; /* Flags used by IPv6 for now */ 72 unsigned int flags; /* Flags used by IPv6 for now */
74}; 73};
74/* This should be set for any extension header which is compatible with GSO. */
75#define INET6_PROTO_GSO_EXTHDR 0x1
75 76
76/* This is used to register socket interfaces for IP protocols. */ 77/* This is used to register socket interfaces for IP protocols. */
77struct inet_protosw { 78struct inet_protosw {
@@ -93,10 +94,10 @@ struct inet_protosw {
93 94
94extern const struct net_protocol __rcu *inet_protos[MAX_INET_PROTOS]; 95extern const struct net_protocol __rcu *inet_protos[MAX_INET_PROTOS];
95extern const struct net_offload __rcu *inet_offloads[MAX_INET_PROTOS]; 96extern const struct net_offload __rcu *inet_offloads[MAX_INET_PROTOS];
97extern const struct net_offload __rcu *inet6_offloads[MAX_INET_PROTOS];
96 98
97#if IS_ENABLED(CONFIG_IPV6) 99#if IS_ENABLED(CONFIG_IPV6)
98extern const struct inet6_protocol __rcu *inet6_protos[MAX_INET_PROTOS]; 100extern const struct inet6_protocol __rcu *inet6_protos[MAX_INET_PROTOS];
99extern const struct net_offload __rcu *inet6_offloads[MAX_INET_PROTOS];
100#endif 101#endif
101 102
102extern int inet_add_protocol(const struct net_protocol *prot, unsigned char num); 103extern int inet_add_protocol(const struct net_protocol *prot, unsigned char num);
@@ -109,10 +110,10 @@ extern void inet_unregister_protosw(struct inet_protosw *p);
109#if IS_ENABLED(CONFIG_IPV6) 110#if IS_ENABLED(CONFIG_IPV6)
110extern int inet6_add_protocol(const struct inet6_protocol *prot, unsigned char num); 111extern int inet6_add_protocol(const struct inet6_protocol *prot, unsigned char num);
111extern int inet6_del_protocol(const struct inet6_protocol *prot, unsigned char num); 112extern int inet6_del_protocol(const struct inet6_protocol *prot, unsigned char num);
112extern int inet6_add_offload(const struct net_offload *prot, unsigned char num);
113extern int inet6_del_offload(const struct net_offload *prot, unsigned char num);
114extern int inet6_register_protosw(struct inet_protosw *p); 113extern int inet6_register_protosw(struct inet_protosw *p);
115extern void inet6_unregister_protosw(struct inet_protosw *p); 114extern void inet6_unregister_protosw(struct inet_protosw *p);
116#endif 115#endif
116extern int inet6_add_offload(const struct net_offload *prot, unsigned char num);
117extern int inet6_del_offload(const struct net_offload *prot, unsigned char num);
117 118
118#endif /* _PROTOCOL_H */ 119#endif /* _PROTOCOL_H */