git://git.onelab.eu
/
sliver-openvswitch.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
tunneling: Force selection of an IP ID with GRE.
[sliver-openvswitch.git]
/
datapath
/
vport-gre.c
diff --git
a/datapath/vport-gre.c
b/datapath/vport-gre.c
index
9c1c1cc
..
46e0be8
100644
(file)
--- a/
datapath/vport-gre.c
+++ b/
datapath/vport-gre.c
@@
-103,9
+103,12
@@
static struct sk_buff *gre_update_header(const struct vport *vport,
0));
/*
* Allow our local IP stack to fragment the outer packet even if the
0));
/*
* Allow our local IP stack to fragment the outer packet even if the
- * DF bit is set as a last resort.
+ * DF bit is set as a last resort. We also need to force selection of
+ * an IP ID here because Linux will otherwise leave it at 0 if the
+ * packet originally had DF set.
*/
skb->local_df = 1;
*/
skb->local_df = 1;
+ __ip_select_ident(ip_hdr(skb), dst, 0);
return skb;
}
return skb;
}