git://ftp.safe.ca
/
safe
/
jmp
/
linux-2.6
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
net: Introduce sk_tx_queue_mapping
[safe/jmp/linux-2.6]
/
include
/
net
/
ipip.h
diff --git
a/include/net/ipip.h
b/include/net/ipip.h
index
a85bda6
..
86f1c8b
100644
(file)
--- a/
include/net/ipip.h
+++ b/
include/net/ipip.h
@@
-7,12
+7,20
@@
/* Keep error state on tunnel for 30 sec */
#define IPTUNNEL_ERR_TIMEO (30*HZ)
/* Keep error state on tunnel for 30 sec */
#define IPTUNNEL_ERR_TIMEO (30*HZ)
+/* 6rd prefix/relay information */
+struct ip_tunnel_6rd_parm
+{
+ struct in6_addr prefix;
+ __be32 relay_prefix;
+ u16 prefixlen;
+ u16 relay_prefixlen;
+};
+
struct ip_tunnel
{
struct ip_tunnel *next;
struct net_device *dev;
struct ip_tunnel
{
struct ip_tunnel *next;
struct net_device *dev;
- int recursion; /* Depth of hard_start_xmit recursion */
int err_count; /* Number of arrived ICMP errors */
unsigned long err_time; /* Time when the last ICMP error arrived */
int err_count; /* Number of arrived ICMP errors */
unsigned long err_time; /* Time when the last ICMP error arrived */
@@
-24,6
+32,10
@@
struct ip_tunnel
struct ip_tunnel_parm parms;
struct ip_tunnel_parm parms;
+ /* for SIT */
+#ifdef CONFIG_IPV6_SIT_6RD
+ struct ip_tunnel_6rd_parm ip6rd;
+#endif
struct ip_tunnel_prl_entry *prl; /* potential router list */
unsigned int prl_count; /* # of entries in PRL */
};
struct ip_tunnel_prl_entry *prl; /* potential router list */
unsigned int prl_count; /* # of entries in PRL */
};
@@
-37,15
+49,15
@@
struct ip_tunnel_prl_entry
#define IPTUNNEL_XMIT() do { \
int err; \
#define IPTUNNEL_XMIT() do { \
int err; \
- int pkt_len = skb->len
;
\
+ int pkt_len = skb->len
- skb_transport_offset(skb);
\
\
skb->ip_summed = CHECKSUM_NONE; \
ip_select_ident(iph, &rt->u.dst, NULL); \
\
err = ip_local_out(skb); \
\
skb->ip_summed = CHECKSUM_NONE; \
ip_select_ident(iph, &rt->u.dst, NULL); \
\
err = ip_local_out(skb); \
- if (
net_xmit_eval(err) == 0) {
\
-
stats->tx_bytes += pkt_len;
\
-
stats->tx_packets++;
\
+ if (
likely(net_xmit_eval(err) == 0)) {
\
+
txq->tx_bytes += pkt_len;
\
+
txq->tx_packets++;
\
} else { \
stats->tx_errors++; \
stats->tx_aborted_errors++; \
} else { \
stats->tx_errors++; \
stats->tx_aborted_errors++; \