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

Make idpf access ->pp through netmem_desc instead of page.

Signed-off-by: Byungchul Park <byungc...@sk.com>
---
 drivers/net/ethernet/intel/idpf/idpf_txrx.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/net/ethernet/intel/idpf/idpf_txrx.c 
b/drivers/net/ethernet/intel/idpf/idpf_txrx.c
index cef9dfb877e8..6b5f440aede3 100644
--- a/drivers/net/ethernet/intel/idpf/idpf_txrx.c
+++ b/drivers/net/ethernet/intel/idpf/idpf_txrx.c
@@ -3276,8 +3276,10 @@ static u32 idpf_rx_hsplit_wa(const struct libeth_fqe 
*hdr,
 
        hdr_page = __netmem_to_page(hdr->netmem);
        buf_page = __netmem_to_page(buf->netmem);
-       dst = page_address(hdr_page) + hdr->offset + hdr_page->pp->p.offset;
-       src = page_address(buf_page) + buf->offset + buf_page->pp->p.offset;
+       dst = page_address(hdr_page) + hdr->offset +
+               pp_page_to_nmdesc(hdr_page)->pp->p.offset;
+       src = page_address(buf_page) + buf->offset +
+               pp_page_to_nmdesc(buf_page)->pp->p.offset;
 
        memcpy(dst, src, LARGEST_ALIGN(copy));
        buf->offset += copy;
@@ -3296,7 +3298,7 @@ static u32 idpf_rx_hsplit_wa(const struct libeth_fqe *hdr,
 struct sk_buff *idpf_rx_build_skb(const struct libeth_fqe *buf, u32 size)
 {
        struct page *buf_page = __netmem_to_page(buf->netmem);
-       u32 hr = buf_page->pp->p.offset;
+       u32 hr = pp_page_to_nmdesc(buf_page)->pp->p.offset;
        struct sk_buff *skb;
        void *va;
 
-- 
2.17.1

Reply via email to