From: Greg Kroah-Hartman Date: Tue, 2 Mar 2021 12:19:13 +0000 (+0100) Subject: 5.4-stable patches X-Git-Tag: v4.4.259~9 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f0fcf2baf25e1395f2b09d327792dbfdac2f2d4b;p=thirdparty%2Fkernel%2Fstable-queue.git 5.4-stable patches added patches: icmp-allow-icmpv6_ndo_send-to-work-with-config_ipv6-n.patch --- diff --git a/queue-5.4/icmp-allow-icmpv6_ndo_send-to-work-with-config_ipv6-n.patch b/queue-5.4/icmp-allow-icmpv6_ndo_send-to-work-with-config_ipv6-n.patch new file mode 100644 index 00000000000..c1bbb3c8ba3 --- /dev/null +++ b/queue-5.4/icmp-allow-icmpv6_ndo_send-to-work-with-config_ipv6-n.patch @@ -0,0 +1,58 @@ +From a8e41f6033a0c5633d55d6e35993c9e2005d872f Mon Sep 17 00:00:00 2001 +From: "Jason A. Donenfeld" +Date: Tue, 25 Feb 2020 18:05:35 +0800 +Subject: icmp: allow icmpv6_ndo_send to work with CONFIG_IPV6=n + +From: Jason A. Donenfeld + +commit a8e41f6033a0c5633d55d6e35993c9e2005d872f upstream. + +The icmpv6_send function has long had a static inline implementation +with an empty body for CONFIG_IPV6=n, so that code calling it doesn't +need to be ifdef'd. The new icmpv6_ndo_send function, which is intended +for drivers as a drop-in replacement with an identical function +signature, should follow the same pattern. Without this patch, drivers +that used to work with CONFIG_IPV6=n now result in a linker error. + +Cc: Chen Zhou +Reported-by: Hulk Robot +Fixes: 0b41713b6066 ("icmp: introduce helper for nat'd source address in network device context") +Signed-off-by: Jason A. Donenfeld +Signed-off-by: David S. Miller +Signed-off-by: Greg Kroah-Hartman +--- + include/linux/icmpv6.h | 16 ++++++++++------ + 1 file changed, 10 insertions(+), 6 deletions(-) + +--- a/include/linux/icmpv6.h ++++ b/include/linux/icmpv6.h +@@ -22,19 +22,23 @@ extern int inet6_unregister_icmp_sender( + int ip6_err_gen_icmpv6_unreach(struct sk_buff *skb, int nhs, int type, + unsigned int data_len); + ++#if IS_ENABLED(CONFIG_NF_NAT) ++void icmpv6_ndo_send(struct sk_buff *skb_in, u8 type, u8 code, __u32 info); ++#else ++#define icmpv6_ndo_send icmpv6_send ++#endif ++ + #else + + static inline void icmpv6_send(struct sk_buff *skb, + u8 type, u8 code, __u32 info) + { +- + } +-#endif + +-#if IS_ENABLED(CONFIG_NF_NAT) +-void icmpv6_ndo_send(struct sk_buff *skb_in, u8 type, u8 code, __u32 info); +-#else +-#define icmpv6_ndo_send icmpv6_send ++static inline void icmpv6_ndo_send(struct sk_buff *skb, ++ u8 type, u8 code, __u32 info) ++{ ++} + #endif + + extern int icmpv6_init(void); diff --git a/queue-5.4/net-icmp-pass-zeroed-opts-from-icmp-v6-_ndo_send-before-sending.patch b/queue-5.4/net-icmp-pass-zeroed-opts-from-icmp-v6-_ndo_send-before-sending.patch index f26c4a35ed0..63379c15747 100644 --- a/queue-5.4/net-icmp-pass-zeroed-opts-from-icmp-v6-_ndo_send-before-sending.patch +++ b/queue-5.4/net-icmp-pass-zeroed-opts-from-icmp-v6-_ndo_send-before-sending.patch @@ -131,7 +131,7 @@ Signed-off-by: Greg Kroah-Hartman } static inline int inet6_register_icmp_sender(ip6_icmp_send_t *fn) { -@@ -34,11 +38,17 @@ static inline int inet6_unregister_icmp_ +@@ -34,18 +38,28 @@ static inline int inet6_unregister_icmp_ return 0; } #else @@ -150,7 +150,6 @@ Signed-off-by: Greg Kroah-Hartman int ip6_err_gen_icmpv6_unreach(struct sk_buff *skb, int nhs, int type, unsigned int data_len); -@@ -54,7 +64,11 @@ static inline void icmpv6_send(struct sk #if IS_ENABLED(CONFIG_NF_NAT) void icmpv6_ndo_send(struct sk_buff *skb_in, u8 type, u8 code, __u32 info); #else @@ -162,7 +161,7 @@ Signed-off-by: Greg Kroah-Hartman +} #endif - extern int icmpv6_init(void); + #else --- a/include/linux/ipv6.h +++ b/include/linux/ipv6.h @@ -83,7 +83,6 @@ struct ipv6_params { diff --git a/queue-5.4/series b/queue-5.4/series index eeba6aace92..12dc3411572 100644 --- a/queue-5.4/series +++ b/queue-5.4/series @@ -327,6 +327,7 @@ dm-era-reinitialize-bitset-cache-before-digesting-a-new-writeset.patch dm-era-only-resize-metadata-in-preresume.patch drm-i915-reject-446-480mhz-hdmi-clock-on-glk.patch icmp-introduce-helper-for-nat-d-source-address-in-network-device-context.patch +icmp-allow-icmpv6_ndo_send-to-work-with-config_ipv6-n.patch gtp-use-icmp_ndo_send-helper.patch sunvnet-use-icmp_ndo_send-helper.patch xfrm-interface-use-icmp_ndo_send-helper.patch