From: Alexander Duyck Date: Fri, 6 Apr 2012 04:24:50 +0000 (+0000) Subject: ixgbe: Use __free_pages instead of put_page to release pages X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=dd411ec4a5743f9108a4bce1b9399a856c6d0378;p=openwrt%2Fstaging%2Fblogic.git ixgbe: Use __free_pages instead of put_page to release pages This change replaces the calls to put_page with calls to __free_page. Since the FCoE code is able to access order 1 pages I thought it would be a good idea to change things over to using __free_pages since that is the preferred approach for freeing pages. Signed-off-by: Alexander Duyck Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher --- diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c index 09409ae9b688..c2ceda9133ba 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c @@ -1144,7 +1144,7 @@ static bool ixgbe_alloc_mapped_page(struct ixgbe_ring *rx_ring, * there isn't much point in holding memory we can't use */ if (dma_mapping_error(rx_ring->dev, dma)) { - put_page(page); + __free_pages(page, ixgbe_rx_pg_order(rx_ring)); bi->page = NULL; rx_ring->rx_stats.alloc_rx_page_failed++; @@ -4102,7 +4102,8 @@ static void ixgbe_clean_rx_ring(struct ixgbe_ring *rx_ring) DMA_FROM_DEVICE); rx_buffer->dma = 0; if (rx_buffer->page) - put_page(rx_buffer->page); + __free_pages(rx_buffer->page, + ixgbe_rx_pg_order(rx_ring)); rx_buffer->page = NULL; }