All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH bpf-next 0/2] net: more fixes to the XDP RXQ series
@ 2018-01-10  9:20 Jakub Kicinski
  2018-01-10  9:20 ` [PATCH bpf-next 1/2] net: use the right variant of kfree Jakub Kicinski
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Jakub Kicinski @ 2018-01-10  9:20 UTC (permalink / raw)
  To: netdev, daniel, alexei.starovoitov; +Cc: oss-drivers, brouer, Jakub Kicinski

Two more trivial fixes to the recent XDP RXQ series.

Jakub Kicinski (2):
  net: use the right variant of kfree
  net: free RX queue structures

 net/core/dev.c | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

-- 
2.15.1

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

* [PATCH bpf-next 1/2] net: use the right variant of kfree
  2018-01-10  9:20 [PATCH bpf-next 0/2] net: more fixes to the XDP RXQ series Jakub Kicinski
@ 2018-01-10  9:20 ` Jakub Kicinski
  2018-01-10 10:58   ` Jesper Dangaard Brouer
  2018-01-10  9:20 ` [PATCH bpf-next 2/2] net: free RX queue structures Jakub Kicinski
  2018-01-10 11:10 ` [PATCH bpf-next 0/2] net: more fixes to the XDP RXQ series Daniel Borkmann
  2 siblings, 1 reply; 6+ messages in thread
From: Jakub Kicinski @ 2018-01-10  9:20 UTC (permalink / raw)
  To: netdev, daniel, alexei.starovoitov; +Cc: oss-drivers, brouer, Jakub Kicinski

kvzalloc'ed memory should be kvfree'd.

Fixes: e817f85652c1 ("xdp: generic XDP handling of xdp_rxq_info")
Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Reviewed-by: Simon Horman <simon.horman@netronome.com>
---
 net/core/dev.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/core/dev.c b/net/core/dev.c
index d7925ef8743d..852a54c769a3 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -7645,7 +7645,7 @@ static int netif_alloc_rx_queues(struct net_device *dev)
 	/* Rollback successful reg's and free other resources */
 	while (i--)
 		xdp_rxq_info_unreg(&rx[i].xdp_rxq);
-	kfree(dev->_rx);
+	kvfree(dev->_rx);
 	dev->_rx = NULL;
 	return err;
 }
-- 
2.15.1

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

* [PATCH bpf-next 2/2] net: free RX queue structures
  2018-01-10  9:20 [PATCH bpf-next 0/2] net: more fixes to the XDP RXQ series Jakub Kicinski
  2018-01-10  9:20 ` [PATCH bpf-next 1/2] net: use the right variant of kfree Jakub Kicinski
@ 2018-01-10  9:20 ` Jakub Kicinski
  2018-01-10 10:59   ` Jesper Dangaard Brouer
  2018-01-10 11:10 ` [PATCH bpf-next 0/2] net: more fixes to the XDP RXQ series Daniel Borkmann
  2 siblings, 1 reply; 6+ messages in thread
From: Jakub Kicinski @ 2018-01-10  9:20 UTC (permalink / raw)
  To: netdev, daniel, alexei.starovoitov; +Cc: oss-drivers, brouer, Jakub Kicinski

Looks like commit e817f85652c1 ("xdp: generic XDP handling of
xdp_rxq_info") replaced kvfree(dev->_rx) in free_netdev() with
a call to netif_free_rx_queues() which doesn't actually free
the rings?

While at it remove the unnecessary temporary variable.

Fixes: e817f85652c1 ("xdp: generic XDP handling of xdp_rxq_info")
Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Reviewed-by: Simon Horman <simon.horman@netronome.com>
---
 net/core/dev.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/net/core/dev.c b/net/core/dev.c
index 852a54c769a3..74e1e5d31337 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -7653,16 +7653,15 @@ static int netif_alloc_rx_queues(struct net_device *dev)
 static void netif_free_rx_queues(struct net_device *dev)
 {
 	unsigned int i, count = dev->num_rx_queues;
-	struct netdev_rx_queue *rx;
 
 	/* netif_alloc_rx_queues alloc failed, resources have been unreg'ed */
 	if (!dev->_rx)
 		return;
 
-	rx = dev->_rx;
-
 	for (i = 0; i < count; i++)
-		xdp_rxq_info_unreg(&rx[i].xdp_rxq);
+		xdp_rxq_info_unreg(&dev->_rx[i].xdp_rxq);
+
+	kvfree(dev->_rx);
 }
 
 static void netdev_init_one_queue(struct net_device *dev,
-- 
2.15.1

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

* Re: [PATCH bpf-next 1/2] net: use the right variant of kfree
  2018-01-10  9:20 ` [PATCH bpf-next 1/2] net: use the right variant of kfree Jakub Kicinski
@ 2018-01-10 10:58   ` Jesper Dangaard Brouer
  0 siblings, 0 replies; 6+ messages in thread
From: Jesper Dangaard Brouer @ 2018-01-10 10:58 UTC (permalink / raw)
  To: Jakub Kicinski; +Cc: netdev, daniel, alexei.starovoitov, oss-drivers, brouer

On Wed, 10 Jan 2018 01:20:01 -0800
Jakub Kicinski <jakub.kicinski@netronome.com> wrote:

> kvzalloc'ed memory should be kvfree'd.
> 
> Fixes: e817f85652c1 ("xdp: generic XDP handling of xdp_rxq_info")
> Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
> Reviewed-by: Simon Horman <simon.horman@netronome.com>
> ---
>  net/core/dev.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/net/core/dev.c b/net/core/dev.c
> index d7925ef8743d..852a54c769a3 100644
> --- a/net/core/dev.c
> +++ b/net/core/dev.c
> @@ -7645,7 +7645,7 @@ static int netif_alloc_rx_queues(struct net_device *dev)
>  	/* Rollback successful reg's and free other resources */
>  	while (i--)
>  		xdp_rxq_info_unreg(&rx[i].xdp_rxq);
> -	kfree(dev->_rx);
> +	kvfree(dev->_rx);
>  	dev->_rx = NULL;
>  	return err;
>  }

Thanks for catching this!

Acked-by: Jesper Dangaard Brouer <brouer@redhat.com>

-- 
Best regards,
  Jesper Dangaard Brouer
  MSc.CS, Principal Kernel Engineer at Red Hat
  LinkedIn: http://www.linkedin.com/in/brouer

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

* Re: [PATCH bpf-next 2/2] net: free RX queue structures
  2018-01-10  9:20 ` [PATCH bpf-next 2/2] net: free RX queue structures Jakub Kicinski
@ 2018-01-10 10:59   ` Jesper Dangaard Brouer
  0 siblings, 0 replies; 6+ messages in thread
From: Jesper Dangaard Brouer @ 2018-01-10 10:59 UTC (permalink / raw)
  To: Jakub Kicinski; +Cc: netdev, daniel, alexei.starovoitov, oss-drivers, brouer

On Wed, 10 Jan 2018 01:20:02 -0800
Jakub Kicinski <jakub.kicinski@netronome.com> wrote:

> Looks like commit e817f85652c1 ("xdp: generic XDP handling of
> xdp_rxq_info") replaced kvfree(dev->_rx) in free_netdev() with
> a call to netif_free_rx_queues() which doesn't actually free
> the rings?
> 
> While at it remove the unnecessary temporary variable.
> 
> Fixes: e817f85652c1 ("xdp: generic XDP handling of xdp_rxq_info")
> Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
> Reviewed-by: Simon Horman <simon.horman@netronome.com>

Acked-by: Jesper Dangaard Brouer <brouer@redhat.com>

Thanks for fixing this!

-- 
Best regards,
  Jesper Dangaard Brouer
  MSc.CS, Principal Kernel Engineer at Red Hat
  LinkedIn: http://www.linkedin.com/in/brouer

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

* Re: [PATCH bpf-next 0/2] net: more fixes to the XDP RXQ series
  2018-01-10  9:20 [PATCH bpf-next 0/2] net: more fixes to the XDP RXQ series Jakub Kicinski
  2018-01-10  9:20 ` [PATCH bpf-next 1/2] net: use the right variant of kfree Jakub Kicinski
  2018-01-10  9:20 ` [PATCH bpf-next 2/2] net: free RX queue structures Jakub Kicinski
@ 2018-01-10 11:10 ` Daniel Borkmann
  2 siblings, 0 replies; 6+ messages in thread
From: Daniel Borkmann @ 2018-01-10 11:10 UTC (permalink / raw)
  To: Jakub Kicinski, netdev, alexei.starovoitov; +Cc: oss-drivers, brouer

On 01/10/2018 10:20 AM, Jakub Kicinski wrote:
> Two more trivial fixes to the recent XDP RXQ series.
> 
> Jakub Kicinski (2):
>   net: use the right variant of kfree
>   net: free RX queue structures
> 
>  net/core/dev.c | 9 ++++-----
>  1 file changed, 4 insertions(+), 5 deletions(-)

This one landed properly in patchwork, thus series applied to
bpf-next, thanks Jakub!

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

end of thread, other threads:[~2018-01-10 11:10 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-01-10  9:20 [PATCH bpf-next 0/2] net: more fixes to the XDP RXQ series Jakub Kicinski
2018-01-10  9:20 ` [PATCH bpf-next 1/2] net: use the right variant of kfree Jakub Kicinski
2018-01-10 10:58   ` Jesper Dangaard Brouer
2018-01-10  9:20 ` [PATCH bpf-next 2/2] net: free RX queue structures Jakub Kicinski
2018-01-10 10:59   ` Jesper Dangaard Brouer
2018-01-10 11:10 ` [PATCH bpf-next 0/2] net: more fixes to the XDP RXQ series Daniel Borkmann

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.