To eliminate the use of struct page in page pool, the page pool users
should use netmem descriptor and APIs instead.

Make mlx4 access ->pp_ref_count through netmem_desc instead of page.

Signed-off-by: Byungchul Park <[email protected]>
---
 drivers/net/ethernet/mellanox/mlx4/en_rx.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/mellanox/mlx4/en_rx.c 
b/drivers/net/ethernet/mellanox/mlx4/en_rx.c
index b33285d755b9..92a16ddb7d86 100644
--- a/drivers/net/ethernet/mellanox/mlx4/en_rx.c
+++ b/drivers/net/ethernet/mellanox/mlx4/en_rx.c
@@ -460,9 +460,11 @@ static int mlx4_en_complete_rx_desc(struct mlx4_en_priv 
*priv,
 
                truesize += frag_info->frag_stride;
                if (frag_info->frag_stride == PAGE_SIZE / 2) {
+                       struct netmem_desc *desc = pp_page_to_nmdesc(page);
+
                        frags->page_offset ^= PAGE_SIZE / 2;
                        release = page_count(page) != 1 ||
-                                 atomic_long_read(&page->pp_ref_count) != 1 ||
+                                 atomic_long_read(&desc->pp_ref_count) != 1 ||
                                  page_is_pfmemalloc(page) ||
                                  page_to_nid(page) != numa_mem_id();
                } else if (!priv->rx_headroom) {
-- 
2.17.1

Reply via email to