generic/4.0: fix error during kernel patch application
authorSteven Barth <cyrus@openwrt.org>
Wed, 20 May 2015 19:23:33 +0000 (19:23 +0000)
committerSteven Barth <cyrus@openwrt.org>
Wed, 20 May 2015 19:23:33 +0000 (19:23 +0000)
Commit 5168c9a5702648eb690d32ec821647aca80aeba9 introduced a regression
during patch application on the 4.0 kernel. Some of the patched content
doesn't match the actual code, therefore leading to the following error:
  Applying patch generic/667-ipv6-Fixed-source-specific-default-route-handling.patch
  patching file net/ipv6/ip6_output.c
  Hunk #1 FAILED at 886.
  1 out of 1 hunk FAILED -- rejects in file net/ipv6/ip6_output.c
  patching file net/ipv6/route.c
  Hunk #1 succeeded at 2247 (offset 2 lines).
  Patch generic/667-ipv6-Fixed-source-specific-default-route-handling.patch does not apply (enforce with -f)

This change just adapts the actual patch to fix what is in kernel 4.0
and make it apply cleanly.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>
SVN-Revision: 45705

target/linux/generic/patches-4.0/667-ipv6-Fixed-source-specific-default-route-handling.patch

index b5cc76dc4879d65884a6166fd52e193539c62f6f..50ac1db9c775ed228db68db6d18d9ea22a7501fe 100644 (file)
@@ -24,15 +24,13 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  net/ipv6/route.c      |  5 +++--
  2 files changed, 34 insertions(+), 10 deletions(-)
 
-diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c
-index 7fde1f2..c217775 100644
 --- a/net/ipv6/ip6_output.c
 +++ b/net/ipv6/ip6_output.c
-@@ -886,22 +886,45 @@ static int ip6_dst_lookup_tail(struct sock *sk,
+@@ -883,22 +883,45 @@ static int ip6_dst_lookup_tail(struct so
  #endif
        int err;
  
--      if (!*dst)
+-      if (*dst == NULL)
 -              *dst = ip6_route_output(net, sk, fl6);
 -
 -      err = (*dst)->error;
@@ -82,11 +80,9 @@ index 7fde1f2..c217775 100644
  #ifdef CONFIG_IPV6_OPTIMISTIC_DAD
        /*
         * Here if the dst entry we've looked up
-diff --git a/net/ipv6/route.c b/net/ipv6/route.c
-index 5c48293..d358888 100644
 --- a/net/ipv6/route.c
 +++ b/net/ipv6/route.c
-@@ -2245,9 +2245,10 @@ int ip6_route_get_saddr(struct net *net,
+@@ -2247,9 +2247,10 @@ int ip6_route_get_saddr(struct net *net,
                        unsigned int prefs,
                        struct in6_addr *saddr)
  {
@@ -99,6 +95,3 @@ index 5c48293..d358888 100644
                *saddr = rt->rt6i_prefsrc.addr;
        else
                err = ipv6_dev_get_saddr(net, idev ? idev->dev : NULL,
--- 
-2.1.4
-