Эх сурвалжийг харах

ixgbe: Fix memory leak in ixgbe when receiving traffic on DDP enabled rings

This patch fixes a memory leak that was introduced in the 3.4 kernel.  The
leak occurred when FCoE was enabled and traffic was passed over the FCoE
rings reserved for FCoE.  The memory leak was due to us not populating the
compound page information on the order 1 pages needed for FCoE.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Tested-by: Phil Schmitt <phillip.j.schmitt@intel.com>
Tested-by: Ross Brattain <ross.b.brattain@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Alexander Duyck 13 жил өмнө
parent
commit
8633c08461

+ 1 - 1
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c

@@ -1148,7 +1148,7 @@ static bool ixgbe_alloc_mapped_page(struct ixgbe_ring *rx_ring,
 
 
 	/* alloc new page for storage */
 	/* alloc new page for storage */
 	if (likely(!page)) {
 	if (likely(!page)) {
-		page = alloc_pages(GFP_ATOMIC | __GFP_COLD,
+		page = alloc_pages(GFP_ATOMIC | __GFP_COLD | __GFP_COMP,
 				   ixgbe_rx_pg_order(rx_ring));
 				   ixgbe_rx_pg_order(rx_ring));
 		if (unlikely(!page)) {
 		if (unlikely(!page)) {
 			rx_ring->rx_stats.alloc_rx_page_failed++;
 			rx_ring->rx_stats.alloc_rx_page_failed++;