Message ID | 20240509183634.143273-1-danielj@nvidia.com (mailing list archive) |
---|---|
State | Accepted |
Commit | b49bd37f0bfd7bbfedd54085d5ea4e854778d283 |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | virtio_net: Fix memory leak in virtnet_rx_mod_work | expand |
On 5/9/24 12:36 PM, Daniel Jurgens wrote: > The pointer delcaration was missing the __free(kfree). Works for me: Tested-by: Jens Axboe <axboe@kernel.dk>
On Thu, 9 May 2024 13:36:34 -0500, Daniel Jurgens <danielj@nvidia.com> wrote: > The pointer delcaration was missing the __free(kfree). > > Fixes: ff7c7d9f5261 ("virtio_net: Remove command data from control_buf") > Reported-by: Jens Axboe <axboe@kernel.dk> > Closes: https://lore.kernel.org/netdev/0674ca1b-020f-4f93-94d0-104964566e3f@kernel.dk/ > Signed-off-by: Daniel Jurgens <danielj@nvidia.com> Reviewed-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com> > --- > drivers/net/virtio_net.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c > index df6121c38a1b..42da535913ed 100644 > --- a/drivers/net/virtio_net.c > +++ b/drivers/net/virtio_net.c > @@ -2884,7 +2884,6 @@ static int virtnet_set_queues(struct virtnet_info *vi, u16 queue_pairs) > > static int virtnet_close(struct net_device *dev) > { > - u8 *promisc_allmulti __free(kfree) = NULL; > struct virtnet_info *vi = netdev_priv(dev); > int i; > > @@ -2905,11 +2904,11 @@ static void virtnet_rx_mode_work(struct work_struct *work) > { > struct virtnet_info *vi = > container_of(work, struct virtnet_info, rx_mode_work); > + u8 *promisc_allmulti __free(kfree) = NULL; > struct net_device *dev = vi->dev; > struct scatterlist sg[2]; > struct virtio_net_ctrl_mac *mac_data; > struct netdev_hw_addr *ha; > - u8 *promisc_allmulti; > int uc_count; > int mc_count; > void *buf; > -- > 2.45.0 >
On Thu, May 09, 2024 at 01:36:34PM -0500, Daniel Jurgens wrote: > The pointer delcaration was missing the __free(kfree). > > Fixes: ff7c7d9f5261 ("virtio_net: Remove command data from control_buf") > Reported-by: Jens Axboe <axboe@kernel.dk> > Closes: https://lore.kernel.org/netdev/0674ca1b-020f-4f93-94d0-104964566e3f@kernel.dk/ > Signed-off-by: Daniel Jurgens <danielj@nvidia.com> Acked-by: Michael S. Tsirkin <mst@redhat.com> > --- > drivers/net/virtio_net.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c > index df6121c38a1b..42da535913ed 100644 > --- a/drivers/net/virtio_net.c > +++ b/drivers/net/virtio_net.c > @@ -2884,7 +2884,6 @@ static int virtnet_set_queues(struct virtnet_info *vi, u16 queue_pairs) > > static int virtnet_close(struct net_device *dev) > { > - u8 *promisc_allmulti __free(kfree) = NULL; > struct virtnet_info *vi = netdev_priv(dev); > int i; > > @@ -2905,11 +2904,11 @@ static void virtnet_rx_mode_work(struct work_struct *work) > { > struct virtnet_info *vi = > container_of(work, struct virtnet_info, rx_mode_work); > + u8 *promisc_allmulti __free(kfree) = NULL; > struct net_device *dev = vi->dev; > struct scatterlist sg[2]; > struct virtio_net_ctrl_mac *mac_data; > struct netdev_hw_addr *ha; > - u8 *promisc_allmulti; > int uc_count; > int mc_count; > void *buf; > -- > 2.45.0
Hello: This patch was applied to netdev/net-next.git (main) by Jakub Kicinski <kuba@kernel.org>: On Thu, 9 May 2024 13:36:34 -0500 you wrote: > The pointer delcaration was missing the __free(kfree). > > Fixes: ff7c7d9f5261 ("virtio_net: Remove command data from control_buf") > Reported-by: Jens Axboe <axboe@kernel.dk> > Closes: https://lore.kernel.org/netdev/0674ca1b-020f-4f93-94d0-104964566e3f@kernel.dk/ > Signed-off-by: Daniel Jurgens <danielj@nvidia.com> > > [...] Here is the summary with links: - virtio_net: Fix memory leak in virtnet_rx_mod_work https://git.kernel.org/netdev/net-next/c/b49bd37f0bfd You are awesome, thank you!
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c index df6121c38a1b..42da535913ed 100644 --- a/drivers/net/virtio_net.c +++ b/drivers/net/virtio_net.c @@ -2884,7 +2884,6 @@ static int virtnet_set_queues(struct virtnet_info *vi, u16 queue_pairs) static int virtnet_close(struct net_device *dev) { - u8 *promisc_allmulti __free(kfree) = NULL; struct virtnet_info *vi = netdev_priv(dev); int i; @@ -2905,11 +2904,11 @@ static void virtnet_rx_mode_work(struct work_struct *work) { struct virtnet_info *vi = container_of(work, struct virtnet_info, rx_mode_work); + u8 *promisc_allmulti __free(kfree) = NULL; struct net_device *dev = vi->dev; struct scatterlist sg[2]; struct virtio_net_ctrl_mac *mac_data; struct netdev_hw_addr *ha; - u8 *promisc_allmulti; int uc_count; int mc_count; void *buf;
The pointer delcaration was missing the __free(kfree). Fixes: ff7c7d9f5261 ("virtio_net: Remove command data from control_buf") Reported-by: Jens Axboe <axboe@kernel.dk> Closes: https://lore.kernel.org/netdev/0674ca1b-020f-4f93-94d0-104964566e3f@kernel.dk/ Signed-off-by: Daniel Jurgens <danielj@nvidia.com> --- drivers/net/virtio_net.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)