OSDN Git Service

mm: Introduce struct folio
authorMatthew Wilcox (Oracle) <willy@infradead.org>
Mon, 7 Dec 2020 03:22:48 +0000 (22:22 -0500)
committerMatthew Wilcox (Oracle) <willy@infradead.org>
Mon, 27 Sep 2021 13:27:29 +0000 (09:27 -0400)
commit7b230db3b8d373219f88a3d25c8fbbf12cc7f233
tree0c63ae0c41978ec59e5ea7899a49e940c42b318f
parentc25303281d79299e9f35d4b2e496a8bd134d5715
mm: Introduce struct folio

A struct folio is a new abstraction to replace the venerable struct page.
A function which takes a struct folio argument declares that it will
operate on the entire (possibly compound) page, not just PAGE_SIZE bytes.
In return, the caller guarantees that the pointer it is passing does
not point to a tail page.  No change to generated code.

Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Acked-by: Jeff Layton <jlayton@kernel.org>
Acked-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
Reviewed-by: William Kucharski <william.kucharski@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: David Howells <dhowells@redhat.com>
Acked-by: Mike Rapoport <rppt@linux.ibm.com>
Documentation/core-api/mm-api.rst
include/linux/mm.h
include/linux/mm_types.h
include/linux/page-flags.h