From 53098a8aa5685b515aaa1439ae54a367a3761e41 Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Wed, 20 May 2015 19:23:33 +0000 Subject: [PATCH] generic/4.0: fix error during kernel patch application 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 SVN-Revision: 45705 --- ...xed-source-specific-default-route-handling.patch | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/target/linux/generic/patches-4.0/667-ipv6-Fixed-source-specific-default-route-handling.patch b/target/linux/generic/patches-4.0/667-ipv6-Fixed-source-specific-default-route-handling.patch index b5cc76dc48..50ac1db9c7 100644 --- a/target/linux/generic/patches-4.0/667-ipv6-Fixed-source-specific-default-route-handling.patch +++ b/target/linux/generic/patches-4.0/667-ipv6-Fixed-source-specific-default-route-handling.patch @@ -24,15 +24,13 @@ Signed-off-by: David S. Miller 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 - -- 2.30.2