Intel-Wired-Lan Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Intel-wired-lan] [PATCH v2 net-next 0/4] net: consolidate page_is_pfmemalloc() usage
@ 2021-01-27 20:10 Alexander Lobakin
  2021-01-27 20:11 ` [Intel-wired-lan] [PATCH v2 net-next 1/4] mm: constify page_is_pfmemalloc() argument Alexander Lobakin
                   ` (4 more replies)
  0 siblings, 5 replies; 17+ messages in thread
From: Alexander Lobakin @ 2021-01-27 20:10 UTC (permalink / raw)
  To: intel-wired-lan

page_is_pfmemalloc() is used mostly by networking drivers to test
if a page can be considered for reusing/recycling.
It doesn't write anything to the struct page itself, so its sole
argument can be constified, as well as the first argument of
skb_propagate_pfmemalloc().
In Page Pool core code, it can be simply inlined instead.
Most of the callers from NIC drivers were just doppelgangers of
the same condition tests. Derive them into a new common function
do deduplicate the code.

Since v1 [0]:
 - new: reduce code duplication by introducing a new common function
   to test if a page can be reused/recycled (David Rientjes);
 - collect autographs for Page Pool bits (Jesper Dangaard Brouer,
   Ilias Apalodimas).

[0] https://lore.kernel.org/netdev/20210125164612.243838-1-alobakin at pm.me

Alexander Lobakin (4):
  mm: constify page_is_pfmemalloc() argument
  skbuff: constify skb_propagate_pfmemalloc() "page" argument
  net: introduce common dev_page_is_reserved()
  net: page_pool: simplify page recycling condition tests

 .../net/ethernet/hisilicon/hns3/hns3_enet.c   | 10 ++--------
 drivers/net/ethernet/intel/fm10k/fm10k_main.c |  9 ++-------
 drivers/net/ethernet/intel/i40e/i40e_txrx.c   | 15 +--------------
 drivers/net/ethernet/intel/iavf/iavf_txrx.c   | 15 +--------------
 drivers/net/ethernet/intel/ice/ice_txrx.c     | 11 +----------
 drivers/net/ethernet/intel/igb/igb_main.c     |  7 +------
 drivers/net/ethernet/intel/igc/igc_main.c     |  7 +------
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c |  7 +------
 .../net/ethernet/intel/ixgbevf/ixgbevf_main.c |  7 +------
 .../net/ethernet/mellanox/mlx5/core/en_rx.c   |  7 +------
 include/linux/mm.h                            |  2 +-
 include/linux/skbuff.h                        | 19 +++++++++++++++++--
 net/core/page_pool.c                          | 14 ++++----------
 13 files changed, 34 insertions(+), 96 deletions(-)

-- 
2.30.0



^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2021-01-30 21:23 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-01-27 20:10 [Intel-wired-lan] [PATCH v2 net-next 0/4] net: consolidate page_is_pfmemalloc() usage Alexander Lobakin
2021-01-27 20:11 ` [Intel-wired-lan] [PATCH v2 net-next 1/4] mm: constify page_is_pfmemalloc() argument Alexander Lobakin
2021-01-28 22:44   ` David Rientjes
2021-01-30  2:30   ` Jakub Kicinski
2021-01-27 20:11 ` [Intel-wired-lan] [PATCH v2 net-next 2/4] skbuff: constify skb_propagate_pfmemalloc() "page" argument Alexander Lobakin
2021-01-28 22:45   ` David Rientjes
2021-01-27 20:11 ` [Intel-wired-lan] [PATCH v2 net-next 3/4] net: introduce common dev_page_is_reserved() Alexander Lobakin
2021-01-27 21:47   ` Jesse Brandeburg
2021-01-28 22:48   ` David Rientjes
2021-01-30  2:39   ` Jakub Kicinski
2021-01-30 15:42     ` Alexander Lobakin
2021-01-30 19:07       ` Jakub Kicinski
2021-01-30 19:45         ` Alexander Lobakin
2021-01-30 21:23           ` John Hubbard
2021-01-27 20:11 ` [Intel-wired-lan] [PATCH v2 net-next 4/4] net: page_pool: simplify page recycling condition tests Alexander Lobakin
2021-01-28 22:49   ` David Rientjes
2021-01-27 21:52 ` [Intel-wired-lan] [PATCH v2 net-next 0/4] net: consolidate page_is_pfmemalloc() usage Jesse Brandeburg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox