ar71xx: remove the xfrm.h chunk from the unaligned access hacks, it breaks ipsec
[openwrt/svn-archive/archive.git] / target / linux / ar71xx / patches-3.8 / 902-unaligned_access_hacks.patch
index ae778dad282edd176ccea29ea1018c4c9e44e98a..9eb1324d264a303dcabb9b4d0aa4025eb23c2adf 100644 (file)
  /*
 --- a/net/ipv4/tcp_input.c
 +++ b/net/ipv4/tcp_input.c
-@@ -3868,13 +3868,14 @@ static bool tcp_parse_aligned_timestamp(
+@@ -3896,13 +3896,14 @@ static bool tcp_parse_aligned_timestamp(
  {
        const __be32 *ptr = (const __be32 *)(th + 1);
  
  #include <asm/uaccess.h>
  
  #include <linux/proc_fs.h>
-@@ -763,10 +764,10 @@ static void tcp_v6_send_response(struct 
+@@ -764,10 +765,10 @@ static void tcp_v6_send_response(struct
        topt = (__be32 *)(t1 + 1);
  
        if (ts) {
        if (t->parms.flags & IP6_TNL_F_USE_ORIG_FWMARK)
                fl6.flowi6_mark = skb->mark;
  
-@@ -1240,7 +1240,7 @@ static int ip6gre_header(struct sk_buff 
+@@ -1240,7 +1240,7 @@ static int ip6gre_header(struct sk_buff
        struct ipv6hdr *ipv6h = (struct ipv6hdr *)skb_push(skb, t->hlen);
        __be16 *p = (__be16 *)(ipv6h+1);
  
  #include <linux/netdevice.h>
 --- a/include/net/inet_ecn.h
 +++ b/include/net/inet_ecn.h
-@@ -115,13 +115,13 @@ static inline int IP6_ECN_set_ce(struct 
+@@ -115,13 +115,13 @@ static inline int IP6_ECN_set_ce(struct
  {
        if (INET_ECN_is_not_ect(ipv6_get_dsfield(iph)))
                return 0;
  
  #define IP_TOS                1
  #define IP_TTL                2
---- a/include/uapi/linux/xfrm.h
-+++ b/include/uapi/linux/xfrm.h
-@@ -13,7 +13,7 @@
- typedef union {
-       __be32          a4;
-       __be32          a6[4];
--} xfrm_address_t;
-+} __attribute__((packed, aligned(2))) xfrm_address_t;
- /* Ident of a specific xfrm_state. It is used on input to lookup
-  * the state by (spi,daddr,ah/esp) or to store information about
 --- a/net/core/secure_seq.c
 +++ b/net/core/secure_seq.c
 @@ -43,10 +43,11 @@ __u32 secure_tcpv6_sequence_number(const
        ptr = ip6hoff + sizeof(struct ipv6hdr);
 --- a/net/xfrm/xfrm_input.c
 +++ b/net/xfrm/xfrm_input.c
-@@ -77,8 +77,8 @@ int xfrm_parse_spi(struct sk_buff *skb, 
+@@ -77,8 +77,8 @@ int xfrm_parse_spi(struct sk_buff *skb,
        if (!pskb_may_pull(skb, hlen))
                return -EINVAL;