[RFC PATCH 1/3] mm: Constify folio_mapping() and swapcache_mapping()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Neither of these functions modify their argument; make it const
so the compiler knows this and can optimise accordingly.

Signed-off-by: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx>
---
 include/linux/pagemap.h | 4 ++--
 mm/debug.c              | 2 +-
 mm/swapfile.c           | 2 +-
 mm/util.c               | 2 +-
 4 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/include/linux/pagemap.h b/include/linux/pagemap.h
index 47bfc6b1b632..8a9b2d201706 100644
--- a/include/linux/pagemap.h
+++ b/include/linux/pagemap.h
@@ -532,8 +532,8 @@ static inline void filemap_nr_thps_dec(struct address_space *mapping)
 #endif
 }
 
-struct address_space *folio_mapping(struct folio *);
-struct address_space *swapcache_mapping(struct folio *);
+struct address_space *folio_mapping(const struct folio *);
+struct address_space *swapcache_mapping(const struct folio *);
 
 /**
  * folio_file_mapping - Find the mapping this folio belongs to.
diff --git a/mm/debug.c b/mm/debug.c
index 8d2acf432385..fa3d9686034c 100644
--- a/mm/debug.c
+++ b/mm/debug.c
@@ -67,7 +67,7 @@ static const char *page_type_name(unsigned int page_type)
 	return page_type_names[i];
 }
 
-static void __dump_folio(struct folio *folio, struct page *page,
+static void __dump_folio(const struct folio *folio, struct page *page,
 		unsigned long pfn, unsigned long idx)
 {
 	struct address_space *mapping = folio_mapping(folio);
diff --git a/mm/swapfile.c b/mm/swapfile.c
index 6e867c16ea93..ccaed8c2f761 100644
--- a/mm/swapfile.c
+++ b/mm/swapfile.c
@@ -3658,7 +3658,7 @@ struct swap_info_struct *swp_swap_info(swp_entry_t entry)
 /*
  * out-of-line methods to avoid include hell.
  */
-struct address_space *swapcache_mapping(struct folio *folio)
+struct address_space *swapcache_mapping(const struct folio *folio)
 {
 	return swp_swap_info(folio->swap)->swap_file->f_mapping;
 }
diff --git a/mm/util.c b/mm/util.c
index b6b9684a1438..682ecdb1b1c2 100644
--- a/mm/util.c
+++ b/mm/util.c
@@ -845,7 +845,7 @@ struct anon_vma *folio_anon_vma(const struct folio *folio)
  * You can call this for folios which aren't in the swap cache or page
  * cache and it will return NULL.
  */
-struct address_space *folio_mapping(struct folio *folio)
+struct address_space *folio_mapping(const struct folio *folio)
 {
 	struct address_space *mapping;
 
-- 
2.47.2





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux