From: Jesper Dangaard Brouer <brouer@redhat.com> To: Alexander Lobakin <alobakin@pm.me> Cc: brouer@redhat.com, "David S. Miller" <davem@davemloft.net>, Jakub Kicinski <kuba@kernel.org>, Yisen Zhuang <yisen.zhuang@huawei.com>, Salil Mehta <salil.mehta@huawei.com>, Jesse Brandeburg <jesse.brandeburg@intel.com>, Tony Nguyen <anthony.l.nguyen@intel.com>, Saeed Mahameed <saeedm@nvidia.com>, Leon Romanovsky <leon@kernel.org>, Andrew Morton <akpm@linux-foundation.org>, Jesper Dangaard Brouer <hawk@kernel.org>, Ilias Apalodimas <ilias.apalodimas@linaro.org>, Jonathan Lemon <jonathan.lemon@gmail.com>, Willem de Bruijn <willemb@google.com>, Randy Dunlap <rdunlap@infradead.org>, Aleksandr Nogikh <nogikh@google.com>, Pablo Neira Ayuso <pablo@netfilter.org>, Dexuan Cui <decui@microsoft.com>, Jakub Sitnicki <jakub@cloudflare.com>, Marco Elver <elver@google.com>, Paolo Abeni <pabeni@redhat.com>, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, intel-wired-lan@lists.osuosl.org, linux-rdma@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH net-next 3/3] net: page_pool: simplify page recycling condition tests Date: Mon, 25 Jan 2021 20:22:19 +0100 [thread overview] Message-ID: <20210125202219.43d3d0f0@carbon> (raw) In-Reply-To: <20210125164612.243838-4-alobakin@pm.me> On Mon, 25 Jan 2021 16:47:20 +0000 Alexander Lobakin <alobakin@pm.me> wrote: > pool_page_reusable() is a leftover from pre-NUMA-aware times. For now, > this function is just a redundant wrapper over page_is_pfmemalloc(), > so Inline it into its sole call site. > > Signed-off-by: Alexander Lobakin <alobakin@pm.me> > --- > net/core/page_pool.c | 14 ++++---------- > 1 file changed, 4 insertions(+), 10 deletions(-) Acked-by: Jesper Dangaard Brouer <brouer@redhat.com> > > diff --git a/net/core/page_pool.c b/net/core/page_pool.c > index f3c690b8c8e3..ad8b0707af04 100644 > --- a/net/core/page_pool.c > +++ b/net/core/page_pool.c > @@ -350,14 +350,6 @@ static bool page_pool_recycle_in_cache(struct page *page, > return true; > } > > -/* page is NOT reusable when: > - * 1) allocated when system is under some pressure. (page_is_pfmemalloc) > - */ > -static bool pool_page_reusable(struct page_pool *pool, struct page *page) > -{ > - return !page_is_pfmemalloc(page); > -} > - > /* If the page refcnt == 1, this will try to recycle the page. > * if PP_FLAG_DMA_SYNC_DEV is set, we'll try to sync the DMA area for > * the configured size min(dma_sync_size, pool->max_len). > @@ -373,9 +365,11 @@ __page_pool_put_page(struct page_pool *pool, struct page *page, > * regular page allocator APIs. > * > * refcnt == 1 means page_pool owns page, and can recycle it. > + * > + * page is NOT reusable when allocated when system is under > + * some pressure. (page_is_pfmemalloc) > */ > - if (likely(page_ref_count(page) == 1 && > - pool_page_reusable(pool, page))) { > + if (likely(page_ref_count(page) == 1 && !page_is_pfmemalloc(page))) { > /* Read barrier done in page_ref_count / READ_ONCE */ > > if (pool->p.flags & PP_FLAG_DMA_SYNC_DEV) -- Best regards, Jesper Dangaard Brouer MSc.CS, Principal Kernel Engineer at Red Hat LinkedIn: http://www.linkedin.com/in/brouer
WARNING: multiple messages have this Message-ID (diff)
From: Jesper Dangaard Brouer <brouer@redhat.com> To: intel-wired-lan@osuosl.org Subject: [Intel-wired-lan] [PATCH net-next 3/3] net: page_pool: simplify page recycling condition tests Date: Mon, 25 Jan 2021 20:22:19 +0100 [thread overview] Message-ID: <20210125202219.43d3d0f0@carbon> (raw) In-Reply-To: <20210125164612.243838-4-alobakin@pm.me> On Mon, 25 Jan 2021 16:47:20 +0000 Alexander Lobakin <alobakin@pm.me> wrote: > pool_page_reusable() is a leftover from pre-NUMA-aware times. For now, > this function is just a redundant wrapper over page_is_pfmemalloc(), > so Inline it into its sole call site. > > Signed-off-by: Alexander Lobakin <alobakin@pm.me> > --- > net/core/page_pool.c | 14 ++++---------- > 1 file changed, 4 insertions(+), 10 deletions(-) Acked-by: Jesper Dangaard Brouer <brouer@redhat.com> > > diff --git a/net/core/page_pool.c b/net/core/page_pool.c > index f3c690b8c8e3..ad8b0707af04 100644 > --- a/net/core/page_pool.c > +++ b/net/core/page_pool.c > @@ -350,14 +350,6 @@ static bool page_pool_recycle_in_cache(struct page *page, > return true; > } > > -/* page is NOT reusable when: > - * 1) allocated when system is under some pressure. (page_is_pfmemalloc) > - */ > -static bool pool_page_reusable(struct page_pool *pool, struct page *page) > -{ > - return !page_is_pfmemalloc(page); > -} > - > /* If the page refcnt == 1, this will try to recycle the page. > * if PP_FLAG_DMA_SYNC_DEV is set, we'll try to sync the DMA area for > * the configured size min(dma_sync_size, pool->max_len). > @@ -373,9 +365,11 @@ __page_pool_put_page(struct page_pool *pool, struct page *page, > * regular page allocator APIs. > * > * refcnt == 1 means page_pool owns page, and can recycle it. > + * > + * page is NOT reusable when allocated when system is under > + * some pressure. (page_is_pfmemalloc) > */ > - if (likely(page_ref_count(page) == 1 && > - pool_page_reusable(pool, page))) { > + if (likely(page_ref_count(page) == 1 && !page_is_pfmemalloc(page))) { > /* Read barrier done in page_ref_count / READ_ONCE */ > > if (pool->p.flags & PP_FLAG_DMA_SYNC_DEV) -- Best regards, Jesper Dangaard Brouer MSc.CS, Principal Kernel Engineer at Red Hat LinkedIn: http://www.linkedin.com/in/brouer
next prev parent reply other threads:[~2021-01-26 2:00 UTC|newest] Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-01-25 16:46 [PATCH net-next 0/3] net: constify page_is_pfmemalloc() and its users Alexander Lobakin 2021-01-25 16:46 ` [Intel-wired-lan] " Alexander Lobakin 2021-01-25 16:46 ` [PATCH net-next 1/3] mm: constify page_is_pfmemalloc() argument Alexander Lobakin 2021-01-25 16:46 ` [Intel-wired-lan] " Alexander Lobakin 2021-01-25 16:47 ` [PATCH net-next 2/3] net: constify page_is_pfmemalloc() argument at call sites Alexander Lobakin 2021-01-25 16:47 ` [Intel-wired-lan] " Alexander Lobakin 2021-01-25 18:19 ` David Rientjes 2021-01-25 18:19 ` [Intel-wired-lan] " David Rientjes 2021-01-25 18:19 ` David Rientjes 2021-01-25 18:27 ` Alexander Lobakin 2021-01-25 18:27 ` [Intel-wired-lan] " Alexander Lobakin 2021-01-25 16:47 ` [PATCH net-next 3/3] net: page_pool: simplify page recycling condition tests Alexander Lobakin 2021-01-25 16:47 ` [Intel-wired-lan] " Alexander Lobakin 2021-01-25 19:22 ` Jesper Dangaard Brouer [this message] 2021-01-25 19:22 ` Jesper Dangaard Brouer 2021-01-26 11:08 ` Ilias Apalodimas 2021-01-26 11:08 ` [Intel-wired-lan] " Ilias Apalodimas 2021-01-27 20:23 ` [PATCH net-next 0/3] net: constify page_is_pfmemalloc() and its users Alexander Lobakin 2021-01-27 20:23 ` [Intel-wired-lan] " Alexander Lobakin
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20210125202219.43d3d0f0@carbon \ --to=brouer@redhat.com \ --cc=akpm@linux-foundation.org \ --cc=alobakin@pm.me \ --cc=anthony.l.nguyen@intel.com \ --cc=davem@davemloft.net \ --cc=decui@microsoft.com \ --cc=elver@google.com \ --cc=hawk@kernel.org \ --cc=ilias.apalodimas@linaro.org \ --cc=intel-wired-lan@lists.osuosl.org \ --cc=jakub@cloudflare.com \ --cc=jesse.brandeburg@intel.com \ --cc=jonathan.lemon@gmail.com \ --cc=kuba@kernel.org \ --cc=leon@kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mm@kvack.org \ --cc=linux-rdma@vger.kernel.org \ --cc=netdev@vger.kernel.org \ --cc=nogikh@google.com \ --cc=pabeni@redhat.com \ --cc=pablo@netfilter.org \ --cc=rdunlap@infradead.org \ --cc=saeedm@nvidia.com \ --cc=salil.mehta@huawei.com \ --cc=willemb@google.com \ --cc=yisen.zhuang@huawei.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.