mbox series

[0/6] Allocate and free frozen pages

Message ID 20220531150611.1303156-1-willy@infradead.org (mailing list archive)
Headers show
Series Allocate and free frozen pages | expand

Message

Matthew Wilcox May 31, 2022, 3:06 p.m. UTC
We already have the ability to freeze a page (safely reduce its
reference count to 0).  Some users (eg slab) would prefer to be able
to allocate frozen pages and avoid touching the refcount.  It also
avoids spurious temporary refcounts being taken on these pages.

Matthew Wilcox (Oracle) (6):
  mm/page_alloc: Remove zone parameter from free_one_page()
  mm/page_alloc: Rename free_the_page() to free_frozen_pages()
  mm/page_alloc: Export free_frozen_pages() instead of free_unref_page()
  mm/page_alloc: Add alloc_frozen_pages()
  slab: Allocate frozen pages
  slub: Allocate frozen pages

 mm/internal.h   | 15 ++++++++++--
 mm/mempolicy.c  | 61 ++++++++++++++++++++++++++++++-------------------
 mm/page_alloc.c | 59 +++++++++++++++++++++++++++--------------------
 mm/slab.c       | 23 +++++++++----------
 mm/slub.c       | 26 ++++++++++-----------
 mm/swap.c       |  2 +-
 6 files changed, 110 insertions(+), 76 deletions(-)

Comments

William Kucharski June 1, 2022, 3:31 a.m. UTC | #1
For the series:

Reviewed-by: William Kucharski <william.kucharski@oracle.com>

> On May 31, 2022, at 9:06 AM, Matthew Wilcox (Oracle) <willy@infradead.org> wrote:
> 
> We already have the ability to freeze a page (safely reduce its
> reference count to 0).  Some users (eg slab) would prefer to be able
> to allocate frozen pages and avoid touching the refcount.  It also
> avoids spurious temporary refcounts being taken on these pages.
> 
> Matthew Wilcox (Oracle) (6):
>  mm/page_alloc: Remove zone parameter from free_one_page()
>  mm/page_alloc: Rename free_the_page() to free_frozen_pages()
>  mm/page_alloc: Export free_frozen_pages() instead of free_unref_page()
>  mm/page_alloc: Add alloc_frozen_pages()
>  slab: Allocate frozen pages
>  slub: Allocate frozen pages
> 
> mm/internal.h   | 15 ++++++++++--
> mm/mempolicy.c  | 61 ++++++++++++++++++++++++++++++-------------------
> mm/page_alloc.c | 59 +++++++++++++++++++++++++++--------------------
> mm/slab.c       | 23 +++++++++----------
> mm/slub.c       | 26 ++++++++++-----------
> mm/swap.c       |  2 +-
> 6 files changed, 110 insertions(+), 76 deletions(-)
> 
> -- 
> 2.34.1
> 
>