linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RESEND][PATCH 0/6] Constify struct page arguments
@ 2021-04-16 23:15 Matthew Wilcox (Oracle)
  2021-04-16 23:15 ` [PATCH 1/6] mm: Make __dump_page static Matthew Wilcox (Oracle)
                   ` (6 more replies)
  0 siblings, 7 replies; 20+ messages in thread
From: Matthew Wilcox (Oracle) @ 2021-04-16 23:15 UTC (permalink / raw)
  To: linux-mm; +Cc: Matthew Wilcox (Oracle), Andrew Morton, linux-kernel

[I'm told that patches 2-6 did not make it to the list; resending and
cc'ing lkml this time]

While working on various solutions to the 32-bit struct page size
regression, one of the problems I found was the networking stack expects
to be able to pass const struct page pointers around, and the mm doesn't
provide a lot of const-friendly functions to call.  The root tangle of
problems is that a lot of functions call VM_BUG_ON_PAGE(), which calls
dump_page(), which calls a lot of functions which don't take a const
struct page (but could be const).

I have other things I need to work on, but I offer these patches as a few
steps towards being able to make dump_page() take a const page pointer.

Matthew Wilcox (Oracle) (6):
  mm: Make __dump_page static
  mm/debug: Factor PagePoisoned out of __dump_page
  mm/page_owner: Constify dump_page_owner
  mm: Make compound_head const-preserving
  mm: Constify get_pfnblock_flags_mask and get_pfnblock_migratetype
  mm: Constify page_count and page_ref_count

 include/linux/mmdebug.h         |  3 +--
 include/linux/page-flags.h      | 10 +++++-----
 include/linux/page_owner.h      |  6 +++---
 include/linux/page_ref.h        |  4 ++--
 include/linux/pageblock-flags.h |  2 +-
 mm/debug.c                      | 25 +++++++------------------
 mm/page_alloc.c                 | 16 ++++++++--------
 mm/page_owner.c                 |  2 +-
 8 files changed, 28 insertions(+), 40 deletions(-)

-- 
2.30.2


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

end of thread, other threads:[~2021-04-27  3:31 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-16 23:15 [RESEND][PATCH 0/6] Constify struct page arguments Matthew Wilcox (Oracle)
2021-04-16 23:15 ` [PATCH 1/6] mm: Make __dump_page static Matthew Wilcox (Oracle)
2021-04-23 14:49   ` Vlastimil Babka
2021-04-27  3:30   ` Anshuman Khandual
2021-04-16 23:15 ` [PATCH 2/6] mm/debug: Factor PagePoisoned out of __dump_page Matthew Wilcox (Oracle)
2021-04-23 14:52   ` Vlastimil Babka
2021-04-27  3:30   ` Anshuman Khandual
2021-04-16 23:15 ` [PATCH 3/6] mm/page_owner: Constify dump_page_owner Matthew Wilcox (Oracle)
2021-04-23 14:53   ` Vlastimil Babka
2021-04-27  3:31   ` Anshuman Khandual
2021-04-16 23:15 ` [PATCH 4/6] mm: Make compound_head const-preserving Matthew Wilcox (Oracle)
2021-04-23 14:58   ` Vlastimil Babka
2021-04-27  3:31   ` Anshuman Khandual
2021-04-16 23:15 ` [PATCH 5/6] mm: Constify get_pfnblock_flags_mask and get_pfnblock_migratetype Matthew Wilcox (Oracle)
2021-04-23 14:59   ` Vlastimil Babka
2021-04-27  3:32   ` Anshuman Khandual
2021-04-16 23:15 ` [PATCH 6/6] mm: Constify page_count and page_ref_count Matthew Wilcox (Oracle)
2021-04-23 15:01   ` Vlastimil Babka
2021-04-27  3:32   ` Anshuman Khandual
2021-04-17  7:14 ` [RESEND][PATCH 0/6] Constify struct page arguments William Kucharski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).