From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7428FC54EBC for ; Wed, 11 Jan 2023 04:22:17 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 924A18E0002; Tue, 10 Jan 2023 23:22:14 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 5E854900006; Tue, 10 Jan 2023 23:22:14 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 23F878E000A; Tue, 10 Jan 2023 23:22:14 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id F273A8E0002 for ; Tue, 10 Jan 2023 23:22:13 -0500 (EST) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id CAF0480586 for ; Wed, 11 Jan 2023 04:22:13 +0000 (UTC) X-FDA: 80341220946.23.F0DF418 Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf27.hostedemail.com (Postfix) with ESMTP id 4E54840003 for ; Wed, 11 Jan 2023 04:22:12 +0000 (UTC) Authentication-Results: imf27.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=swFTqKK9; spf=none (imf27.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1673410932; a=rsa-sha256; cv=none; b=B4rHs7oI5yT4CQB2+Eutd5JRcV0fdl7/2yQEdYODv55J5rZW4EmWSGlc9HhJUNwWohi5Lx bsIU7jDmQILdeS6M6KFxnCbMMHQxOqaBcRfzjZCHxG0p9/VxnW22FQh+2151Luuttqcxcr /K+4GWjVnBEO6IVg21BMUmC+znyVGZw= ARC-Authentication-Results: i=1; imf27.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=swFTqKK9; spf=none (imf27.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1673410932; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=BgXZXrpUA502VvYX3JzIzXVS+iE+tqqm0qCwbZsBJSk=; b=pmRgkY6c8C4zdX+bJYSlV46hWBtu6yPcwat5vzn7B8WTh/HFWg+qQY2V2S8p5dkF8hZW3O N8q8yj3DU8nqGzO1COL523afD6hf/kIuq2/5Zh95VF2Rz0qHPllpNRoZdXIvfQIYVQapDR Uf5ZkidFBtQVByLnES09B7X28chvDBM= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Content-Transfer-Encoding:MIME-Version: References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender:Reply-To: Content-Type:Content-ID:Content-Description; bh=BgXZXrpUA502VvYX3JzIzXVS+iE+tqqm0qCwbZsBJSk=; b=swFTqKK9y01fN9SJsO0AhCt7z1 Y9h21jqXZG6ObuJt5W3Nc0bwNb+w96822zwvB/VmyL1ffwjJIBHbtvaia8bFUeTWh+hXvfhMG7JRG bJeBCzG+7jrrvVfQBTlYo/94AB2+23eDxx8S7LkyEgHLRovbUQvIj7ndGWlYgU8yIQJDJkppTTYGf tY5Mwsop0+nN2Ss9coVpvgtm8xGr/TkoUvEbFlavt/26/7eIknqmdqQkCwIoAAguuYUjcXjFZmudg ZszSY9YSIFRcCy/dCnOND781We01OcmI20x1L9/gu2esacveDyRPVLyovigtKwX8ej7MQMtJuOKEo yl1t1Q8A==; Received: from willy by casper.infradead.org with local (Exim 4.94.2 #2 (Red Hat Linux)) id 1pFScz-003ny6-6W; Wed, 11 Jan 2023 04:22:17 +0000 From: "Matthew Wilcox (Oracle)" To: Jesper Dangaard Brouer , Ilias Apalodimas Cc: "Matthew Wilcox (Oracle)" , netdev@vger.kernel.org, linux-mm@kvack.org, Shakeel Butt , Jesper Dangaard Brouer , Jesse Brandeburg Subject: [PATCH v3 13/26] page_pool: Convert page_pool_dma_sync_for_device() to take a netmem Date: Wed, 11 Jan 2023 04:22:01 +0000 Message-Id: <20230111042214.907030-14-willy@infradead.org> X-Mailer: git-send-email 2.37.1 In-Reply-To: <20230111042214.907030-1-willy@infradead.org> References: <20230111042214.907030-1-willy@infradead.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspam-User: X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: 4E54840003 X-Stat-Signature: bajxorb6odruocpcquccruu841ner6oe X-HE-Tag: 1673410932-342289 X-HE-Meta: U2FsdGVkX1+2kksyuF0WbxXH1mJJN0C4CpPdzhTHsIv0fhhA1dlhcY2YYwBXsvdKBHX3MYn0IForqy2VGezWtXbWwTKcwwTWGGQbH9M1mjdYylH/sm801qTP0LoRkJZp/98QMC/lRTlVQO6slyo38QYAIqXCwAbwFNXcqmehGLZ4a9p0M6I5UVG4YDhnzz+XZG2RMzZz2P5m3gabiyXMv6vto4HPftvlhlE5JrVett91hkO51Pf0kpqPBXYtmTwEjLdSsqSvq/c1XixnzjakM8IPVPkj/Ml8TDq34ioqTt18ko0U5yn/8RNj4Yvk77Vvx7C9g6MM9tT1CwY/NkVZtLrh4z1NeJhKnxJehYfLh+Zc26D2Umxp1vQk8gRh382cMWkTgdPdIzLcUnUu5SpdDiXCady1DUXzdiQ6F/bMBg88zbTLmKaQvZIdztK0dokdbeUHipKX3kbRyN7sBgY9M8bxSWi6pxxqPwvfyiHYxYHKCJoCAtfbmwatPLcAGiwmIC8Bbfjib2KfK1j5WGbse/soJGMCsDcsvYnUnFDkxJ273BVqRpmbhuHIpP277ZH3YhsUbl9OIFxyZyCIQBV1Qk29PTKsiltfQCm1ybZABwNpsJMaZPcNyfNjgXqs9+fadE8+Wfd+2WvFdLleBfPXr4+/M2BFtFe+9ewLslWKLHd/HxrtAQuvg/zXdnrV48JRqv8rtuhtPP2tD7svE8QvFYIuaqaoS4etbTib8EGJ4I0bomkNEv4OciXovF+ryMABNVh8SfUqPR6eXzEeWKTsukBK+V1MSFwi4smMMIIj8AXhSwspgTE8+kVPDhihsT+HW6hBZNU7Amy6RtWokIFlAwpf65VRTRP0DuwLpjdog21QlfIVmnexvqFBfdfJAx4+sruvSyQkX77gU3He69Ho3iXCWpDX1zDsUIAVXCbVBdXK5DtsaWDv4w== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: All callers converted. Signed-off-by: Matthew Wilcox (Oracle) Acked-by: Jesper Dangaard Brouer Reviewed-by: Ilias Apalodimas Reviewed-by: Jesse Brandeburg --- net/core/page_pool.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/net/core/page_pool.c b/net/core/page_pool.c index c7ea487acbaa..3fa03baa80ee 100644 --- a/net/core/page_pool.c +++ b/net/core/page_pool.c @@ -299,10 +299,10 @@ static struct netmem *__page_pool_get_cached(struct page_pool *pool) } static void page_pool_dma_sync_for_device(struct page_pool *pool, - struct page *page, + struct netmem *nmem, unsigned int dma_sync_size) { - dma_addr_t dma_addr = page_pool_get_dma_addr(page); + dma_addr_t dma_addr = netmem_get_dma_addr(nmem); dma_sync_size = min(dma_sync_size, pool->p.max_len); dma_sync_single_range_for_device(pool->p.dev, dma_addr, @@ -329,7 +329,7 @@ static bool page_pool_dma_map(struct page_pool *pool, struct netmem *nmem) page_pool_set_dma_addr(page, dma); if (pool->p.flags & PP_FLAG_DMA_SYNC_DEV) - page_pool_dma_sync_for_device(pool, page, pool->p.max_len); + page_pool_dma_sync_for_device(pool, nmem, pool->p.max_len); return true; } @@ -576,7 +576,7 @@ __page_pool_put_netmem(struct page_pool *pool, struct netmem *nmem, /* Read barrier done in netmem_ref_count / READ_ONCE */ if (pool->p.flags & PP_FLAG_DMA_SYNC_DEV) - page_pool_dma_sync_for_device(pool, netmem_page(nmem), + page_pool_dma_sync_for_device(pool, nmem, dma_sync_size); if (allow_direct && in_serving_softirq() && @@ -676,6 +676,7 @@ EXPORT_SYMBOL(page_pool_put_page_bulk); static struct page *page_pool_drain_frag(struct page_pool *pool, struct page *page) { + struct netmem *nmem = page_netmem(page); long drain_count = BIAS_MAX - pool->frag_users; /* Some user is still using the page frag */ @@ -684,7 +685,7 @@ static struct page *page_pool_drain_frag(struct page_pool *pool, if (page_ref_count(page) == 1 && !page_is_pfmemalloc(page)) { if (pool->p.flags & PP_FLAG_DMA_SYNC_DEV) - page_pool_dma_sync_for_device(pool, page, -1); + page_pool_dma_sync_for_device(pool, nmem, -1); return page; } -- 2.35.1