linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] udp: Unbreak modules that rely on external __skb_recv_udp() availability
@ 2018-10-04 11:37 Jiri Kosina
  2018-10-08  3:34 ` David Miller
  0 siblings, 1 reply; 3+ messages in thread
From: Jiri Kosina @ 2018-10-04 11:37 UTC (permalink / raw)
  To: David S. Miller, Hideaki YOSHIFUJI, Paolo Abeni, Eric Dumazet
  Cc: netdev, linux-kernel

From: Jiri Kosina <jkosina@suse.cz>

Commit 2276f58ac589 ("udp: use a separate rx queue for packet reception")
turned static inline __skb_recv_udp() from being a trivial helper around
__skb_recv_datagram() into a UDP specific implementaion, making it
EXPORT_SYMBOL_GPL() at the same time.

There are external modules that got broken by __skb_recv_udp() not being
visible to them. Let's unbreak them by making __skb_recv_udp EXPORT_SYMBOL().

Rationale (one of those) why this is actually "technically correct" thing 
to do: __skb_recv_udp() used to be an inline wrapper around 
__skb_recv_datagram(), which itself (still, and correctly so, I believe) 
is EXPORT_SYMBOL().

Cc: Paolo Abeni <pabeni@redhat.com>
Cc: Eric Dumazet <edumazet@google.com>
Fixes: 2276f58ac589 ("udp: use a separate rx queue for packet reception")
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
---
 net/ipv4/udp.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/ipv4/udp.c b/net/ipv4/udp.c
index 7d69dd6fa7e8..c32a4c16b7ff 100644
--- a/net/ipv4/udp.c
+++ b/net/ipv4/udp.c
@@ -1627,7 +1627,7 @@ struct sk_buff *__skb_recv_udp(struct sock *sk, unsigned int flags,
 	*err = error;
 	return NULL;
 }
-EXPORT_SYMBOL_GPL(__skb_recv_udp);
+EXPORT_SYMBOL(__skb_recv_udp);
 
 /*
  * 	This should be easy, if there is something there we

-- 
Jiri Kosina
SUSE Labs


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] udp: Unbreak modules that rely on external __skb_recv_udp() availability
  2018-10-04 11:37 [PATCH] udp: Unbreak modules that rely on external __skb_recv_udp() availability Jiri Kosina
@ 2018-10-08  3:34 ` David Miller
  2018-10-08  5:15   ` Jiri Kosina
  0 siblings, 1 reply; 3+ messages in thread
From: David Miller @ 2018-10-08  3:34 UTC (permalink / raw)
  To: jikos; +Cc: yoshfuji, pabeni, edumazet, netdev, linux-kernel

From: Jiri Kosina <jikos@kernel.org>
Date: Thu, 4 Oct 2018 13:37:32 +0200 (CEST)

> From: Jiri Kosina <jkosina@suse.cz>
> 
> Commit 2276f58ac589 ("udp: use a separate rx queue for packet reception")
> turned static inline __skb_recv_udp() from being a trivial helper around
> __skb_recv_datagram() into a UDP specific implementaion, making it
> EXPORT_SYMBOL_GPL() at the same time.
> 
> There are external modules that got broken by __skb_recv_udp() not being
> visible to them. Let's unbreak them by making __skb_recv_udp EXPORT_SYMBOL().
> 
> Rationale (one of those) why this is actually "technically correct" thing 
> to do: __skb_recv_udp() used to be an inline wrapper around 
> __skb_recv_datagram(), which itself (still, and correctly so, I believe) 
> is EXPORT_SYMBOL().
> 
> Cc: Paolo Abeni <pabeni@redhat.com>
> Cc: Eric Dumazet <edumazet@google.com>
> Fixes: 2276f58ac589 ("udp: use a separate rx queue for packet reception")
> Signed-off-by: Jiri Kosina <jkosina@suse.cz>

Applied...

But waiting from 4.13 until now to bring this up is really pushing it...

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] udp: Unbreak modules that rely on external __skb_recv_udp() availability
  2018-10-08  3:34 ` David Miller
@ 2018-10-08  5:15   ` Jiri Kosina
  0 siblings, 0 replies; 3+ messages in thread
From: Jiri Kosina @ 2018-10-08  5:15 UTC (permalink / raw)
  To: David Miller; +Cc: yoshfuji, pabeni, edumazet, netdev, linux-kernel

On Sun, 7 Oct 2018, David Miller wrote:

> > From: Jiri Kosina <jkosina@suse.cz>
> > 
> > Commit 2276f58ac589 ("udp: use a separate rx queue for packet reception")
> > turned static inline __skb_recv_udp() from being a trivial helper around
> > __skb_recv_datagram() into a UDP specific implementaion, making it
> > EXPORT_SYMBOL_GPL() at the same time.
> > 
> > There are external modules that got broken by __skb_recv_udp() not being
> > visible to them. Let's unbreak them by making __skb_recv_udp EXPORT_SYMBOL().
> > 
> > Rationale (one of those) why this is actually "technically correct" thing 
> > to do: __skb_recv_udp() used to be an inline wrapper around 
> > __skb_recv_datagram(), which itself (still, and correctly so, I believe) 
> > is EXPORT_SYMBOL().
> > 
> > Cc: Paolo Abeni <pabeni@redhat.com>
> > Cc: Eric Dumazet <edumazet@google.com>
> > Fixes: 2276f58ac589 ("udp: use a separate rx queue for packet reception")
> > Signed-off-by: Jiri Kosina <jkosina@suse.cz>
> 
> Applied...

Thanks.

> But waiting from 4.13 until now to bring this up is really pushing it...

Well, we been hit by this in distro kernel that got 2276f58ac589 
backported only recently, so that's why.

Thanks again,

-- 
Jiri Kosina
SUSE Labs


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-10-08  5:15 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-04 11:37 [PATCH] udp: Unbreak modules that rely on external __skb_recv_udp() availability Jiri Kosina
2018-10-08  3:34 ` David Miller
2018-10-08  5:15   ` Jiri Kosina

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).