From: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
To: Max Kellermann <max.kellermann@ionos.com>
Cc: akpm@linux-foundation.org, david@redhat.com,
axelrasmussen@google.com, yuanchu@google.com,
willy@infradead.org, hughd@google.com, mhocko@suse.com,
linux-kernel@vger.kernel.org, linux-mm@kvack.org,
Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org,
surenb@google.com, vishal.moola@gmail.com, linux@armlinux.org.uk,
James.Bottomley@hansenpartnership.com, deller@gmx.de,
agordeev@linux.ibm.com, gerald.schaefer@linux.ibm.com,
hca@linux.ibm.com, gor@linux.ibm.com, borntraeger@linux.ibm.com,
svens@linux.ibm.com, davem@davemloft.net, andreas@gaisler.com,
dave.hansen@linux.intel.com, luto@kernel.org,
peterz@infradead.org, tglx@linutronix.de, mingo@redhat.com,
bp@alien8.de, x86@kernel.org, hpa@zytor.com, chris@zankel.net,
jcmvbkbc@gmail.com, viro@zeniv.linux.org.uk, brauner@kernel.org,
jack@suse.cz, weixugc@google.com, baolin.wang@linux.alibaba.com,
rientjes@google.com, shakeel.butt@linux.dev, thuth@redhat.com,
broonie@kernel.org, osalvador@suse.de, jfalempe@redhat.com,
mpe@ellerman.id.au, nysal@linux.ibm.com,
linux-arm-kernel@lists.infradead.org,
linux-parisc@vger.kernel.org, linux-s390@vger.kernel.org,
sparclinux@vger.kernel.org, linux-fsdevel@vger.kernel.org
Subject: Re: [PATCH v6 11/12] mm: constify assert/test functions in mm.h
Date: Tue, 2 Sep 2025 07:17:06 +0100 [thread overview]
Message-ID: <75fa6c34-c972-4710-b37c-a03ae797465b@lucifer.local> (raw)
In-Reply-To: <20250901205021.3573313-12-max.kellermann@ionos.com>
On Mon, Sep 01, 2025 at 10:50:20PM +0200, Max Kellermann wrote:
> For improved const-correctness.
>
> We select certain assert and test functions which either invoke each
> other, functions that are already const-ified, or no further
> functions.
>
> It is therefore relatively trivial to const-ify them, which
> provides a basis for further const-ification further up the call
> stack.
>
> Signed-off-by: Max Kellermann <max.kellermann@ionos.com>
LGTM, so:
Reviewed-by: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
> ---
> include/linux/mm.h | 40 ++++++++++++++++++++--------------------
> 1 file changed, 20 insertions(+), 20 deletions(-)
>
> diff --git a/include/linux/mm.h b/include/linux/mm.h
> index 23864c3519d6..c3767688771c 100644
> --- a/include/linux/mm.h
> +++ b/include/linux/mm.h
> @@ -703,7 +703,7 @@ static inline void release_fault_lock(struct vm_fault *vmf)
> mmap_read_unlock(vmf->vma->vm_mm);
> }
>
> -static inline void assert_fault_locked(struct vm_fault *vmf)
> +static inline void assert_fault_locked(const struct vm_fault *vmf)
> {
> if (vmf->flags & FAULT_FLAG_VMA_LOCK)
> vma_assert_locked(vmf->vma);
> @@ -716,7 +716,7 @@ static inline void release_fault_lock(struct vm_fault *vmf)
> mmap_read_unlock(vmf->vma->vm_mm);
> }
>
> -static inline void assert_fault_locked(struct vm_fault *vmf)
> +static inline void assert_fault_locked(const struct vm_fault *vmf)
> {
> mmap_assert_locked(vmf->vma->vm_mm);
> }
> @@ -859,7 +859,7 @@ static inline bool vma_is_initial_stack(const struct vm_area_struct *vma)
> vma->vm_end >= vma->vm_mm->start_stack;
> }
>
> -static inline bool vma_is_temporary_stack(struct vm_area_struct *vma)
> +static inline bool vma_is_temporary_stack(const struct vm_area_struct *vma)
> {
> int maybe_stack = vma->vm_flags & (VM_GROWSDOWN | VM_GROWSUP);
>
> @@ -873,7 +873,7 @@ static inline bool vma_is_temporary_stack(struct vm_area_struct *vma)
> return false;
> }
>
> -static inline bool vma_is_foreign(struct vm_area_struct *vma)
> +static inline bool vma_is_foreign(const struct vm_area_struct *vma)
> {
> if (!current->mm)
> return true;
> @@ -884,7 +884,7 @@ static inline bool vma_is_foreign(struct vm_area_struct *vma)
> return false;
> }
>
> -static inline bool vma_is_accessible(struct vm_area_struct *vma)
> +static inline bool vma_is_accessible(const struct vm_area_struct *vma)
> {
> return vma->vm_flags & VM_ACCESS_FLAGS;
> }
> @@ -895,7 +895,7 @@ static inline bool is_shared_maywrite(vm_flags_t vm_flags)
> (VM_SHARED | VM_MAYWRITE);
> }
>
> -static inline bool vma_is_shared_maywrite(struct vm_area_struct *vma)
> +static inline bool vma_is_shared_maywrite(const struct vm_area_struct *vma)
> {
> return is_shared_maywrite(vma->vm_flags);
> }
> @@ -1839,7 +1839,7 @@ static inline struct folio *pfn_folio(unsigned long pfn)
> }
>
> #ifdef CONFIG_MMU
> -static inline pte_t mk_pte(struct page *page, pgprot_t pgprot)
> +static inline pte_t mk_pte(const struct page *page, pgprot_t pgprot)
> {
> return pfn_pte(page_to_pfn(page), pgprot);
> }
> @@ -1854,7 +1854,7 @@ static inline pte_t mk_pte(struct page *page, pgprot_t pgprot)
> *
> * Return: A page table entry suitable for mapping this folio.
> */
> -static inline pte_t folio_mk_pte(struct folio *folio, pgprot_t pgprot)
> +static inline pte_t folio_mk_pte(const struct folio *folio, pgprot_t pgprot)
> {
> return pfn_pte(folio_pfn(folio), pgprot);
> }
> @@ -1870,7 +1870,7 @@ static inline pte_t folio_mk_pte(struct folio *folio, pgprot_t pgprot)
> *
> * Return: A page table entry suitable for mapping this folio.
> */
> -static inline pmd_t folio_mk_pmd(struct folio *folio, pgprot_t pgprot)
> +static inline pmd_t folio_mk_pmd(const struct folio *folio, pgprot_t pgprot)
> {
> return pmd_mkhuge(pfn_pmd(folio_pfn(folio), pgprot));
> }
> @@ -1886,7 +1886,7 @@ static inline pmd_t folio_mk_pmd(struct folio *folio, pgprot_t pgprot)
> *
> * Return: A page table entry suitable for mapping this folio.
> */
> -static inline pud_t folio_mk_pud(struct folio *folio, pgprot_t pgprot)
> +static inline pud_t folio_mk_pud(const struct folio *folio, pgprot_t pgprot)
> {
> return pud_mkhuge(pfn_pud(folio_pfn(folio), pgprot));
> }
> @@ -3488,7 +3488,7 @@ struct vm_area_struct *vma_lookup(struct mm_struct *mm, unsigned long addr)
> return mtree_load(&mm->mm_mt, addr);
> }
>
> -static inline unsigned long stack_guard_start_gap(struct vm_area_struct *vma)
> +static inline unsigned long stack_guard_start_gap(const struct vm_area_struct *vma)
> {
> if (vma->vm_flags & VM_GROWSDOWN)
> return stack_guard_gap;
> @@ -3500,7 +3500,7 @@ static inline unsigned long stack_guard_start_gap(struct vm_area_struct *vma)
> return 0;
> }
>
> -static inline unsigned long vm_start_gap(struct vm_area_struct *vma)
> +static inline unsigned long vm_start_gap(const struct vm_area_struct *vma)
> {
> unsigned long gap = stack_guard_start_gap(vma);
> unsigned long vm_start = vma->vm_start;
> @@ -3511,7 +3511,7 @@ static inline unsigned long vm_start_gap(struct vm_area_struct *vma)
> return vm_start;
> }
>
> -static inline unsigned long vm_end_gap(struct vm_area_struct *vma)
> +static inline unsigned long vm_end_gap(const struct vm_area_struct *vma)
> {
> unsigned long vm_end = vma->vm_end;
>
> @@ -3523,7 +3523,7 @@ static inline unsigned long vm_end_gap(struct vm_area_struct *vma)
> return vm_end;
> }
>
> -static inline unsigned long vma_pages(struct vm_area_struct *vma)
> +static inline unsigned long vma_pages(const struct vm_area_struct *vma)
> {
> return (vma->vm_end - vma->vm_start) >> PAGE_SHIFT;
> }
> @@ -3540,7 +3540,7 @@ static inline struct vm_area_struct *find_exact_vma(struct mm_struct *mm,
> return vma;
> }
>
> -static inline bool range_in_vma(struct vm_area_struct *vma,
> +static inline bool range_in_vma(const struct vm_area_struct *vma,
> unsigned long start, unsigned long end)
> {
> return (vma && vma->vm_start <= start && end <= vma->vm_end);
> @@ -3656,7 +3656,7 @@ static inline int vm_fault_to_errno(vm_fault_t vm_fault, int foll_flags)
> * Indicates whether GUP can follow a PROT_NONE mapped page, or whether
> * a (NUMA hinting) fault is required.
> */
> -static inline bool gup_can_follow_protnone(struct vm_area_struct *vma,
> +static inline bool gup_can_follow_protnone(const struct vm_area_struct *vma,
> unsigned int flags)
> {
> /*
> @@ -3786,7 +3786,7 @@ static inline bool debug_guardpage_enabled(void)
> return static_branch_unlikely(&_debug_guardpage_enabled);
> }
>
> -static inline bool page_is_guard(struct page *page)
> +static inline bool page_is_guard(const struct page *page)
> {
> if (!debug_guardpage_enabled())
> return false;
> @@ -3817,7 +3817,7 @@ static inline void debug_pagealloc_map_pages(struct page *page, int numpages) {}
> static inline void debug_pagealloc_unmap_pages(struct page *page, int numpages) {}
> static inline unsigned int debug_guardpage_minorder(void) { return 0; }
> static inline bool debug_guardpage_enabled(void) { return false; }
> -static inline bool page_is_guard(struct page *page) { return false; }
> +static inline bool page_is_guard(const struct page *page) { return false; }
> static inline bool set_page_guard(struct zone *zone, struct page *page,
> unsigned int order) { return false; }
> static inline void clear_page_guard(struct zone *zone, struct page *page,
> @@ -3899,7 +3899,7 @@ void vmemmap_free(unsigned long start, unsigned long end,
> #endif
>
> #ifdef CONFIG_SPARSEMEM_VMEMMAP
> -static inline unsigned long vmem_altmap_offset(struct vmem_altmap *altmap)
> +static inline unsigned long vmem_altmap_offset(const struct vmem_altmap *altmap)
> {
> /* number of pfns from base where pfn_to_page() is valid */
> if (altmap)
> @@ -3913,7 +3913,7 @@ static inline void vmem_altmap_free(struct vmem_altmap *altmap,
> altmap->alloc -= nr_pfns;
> }
> #else
> -static inline unsigned long vmem_altmap_offset(struct vmem_altmap *altmap)
> +static inline unsigned long vmem_altmap_offset(const struct vmem_altmap *altmap)
> {
> return 0;
> }
> --
> 2.47.2
>
next prev parent reply other threads:[~2025-09-02 6:17 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-09-01 20:50 [PATCH v6 00/12] mm: establish const-correctness for pointer parameters Max Kellermann
2025-09-01 20:50 ` [PATCH v6 01/12] mm: constify shmem related test functions for improved const-correctness Max Kellermann
2025-09-01 20:50 ` [PATCH v6 02/12] mm: constify pagemap related test/getter functions Max Kellermann
2025-09-01 20:50 ` [PATCH v6 03/12] mm: constify zone " Max Kellermann
2025-09-01 20:50 ` [PATCH v6 04/12] fs: constify mapping related test functions for improved const-correctness Max Kellermann
2025-09-02 10:42 ` Jan Kara
2025-09-02 10:57 ` Christian Brauner
2025-09-01 20:50 ` [PATCH v6 05/12] mm: constify process_shares_mm() " Max Kellermann
2025-09-02 8:03 ` David Hildenbrand
2025-09-01 20:50 ` [PATCH v6 06/12] mm, s390: constify mapping related test/getter functions Max Kellermann
2025-09-02 6:13 ` Lorenzo Stoakes
2025-09-02 8:04 ` David Hildenbrand
2025-09-01 20:50 ` [PATCH v6 07/12] parisc: constify mmap_upper_limit() parameter Max Kellermann
2025-09-02 6:13 ` Lorenzo Stoakes
2025-09-02 8:04 ` David Hildenbrand
2025-09-01 20:50 ` [PATCH v6 08/12] mm: constify arch_pick_mmap_layout() for improved const-correctness Max Kellermann
2025-09-02 6:15 ` Lorenzo Stoakes
2025-09-02 8:05 ` David Hildenbrand
2025-09-01 20:50 ` [PATCH v6 09/12] mm: constify ptdesc_pmd_pts_count() and folio_get_private() Max Kellermann
2025-09-01 20:50 ` [PATCH v6 10/12] mm: constify various inline functions for improved const-correctness Max Kellermann
2025-09-02 6:16 ` Lorenzo Stoakes
2025-09-02 8:05 ` David Hildenbrand
2025-09-01 20:50 ` [PATCH v6 11/12] mm: constify assert/test functions in mm.h Max Kellermann
2025-09-02 6:17 ` Lorenzo Stoakes [this message]
2025-09-02 8:06 ` David Hildenbrand
2025-09-01 20:50 ` [PATCH v6 12/12] mm: constify highmem related functions for improved const-correctness Max Kellermann
2025-09-02 6:17 ` Lorenzo Stoakes
2025-09-02 8:11 ` David Hildenbrand
2025-09-01 21:34 ` [PATCH v6 00/12] mm: establish const-correctness for pointer parameters Vlastimil Babka
2025-09-02 6:19 ` Lorenzo Stoakes
2025-09-02 8:12 ` David Hildenbrand
2025-09-02 10:02 ` Mike Rapoport
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=75fa6c34-c972-4710-b37c-a03ae797465b@lucifer.local \
--to=lorenzo.stoakes@oracle.com \
--cc=James.Bottomley@hansenpartnership.com \
--cc=Liam.Howlett@oracle.com \
--cc=agordeev@linux.ibm.com \
--cc=akpm@linux-foundation.org \
--cc=andreas@gaisler.com \
--cc=axelrasmussen@google.com \
--cc=baolin.wang@linux.alibaba.com \
--cc=borntraeger@linux.ibm.com \
--cc=bp@alien8.de \
--cc=brauner@kernel.org \
--cc=broonie@kernel.org \
--cc=chris@zankel.net \
--cc=dave.hansen@linux.intel.com \
--cc=davem@davemloft.net \
--cc=david@redhat.com \
--cc=deller@gmx.de \
--cc=gerald.schaefer@linux.ibm.com \
--cc=gor@linux.ibm.com \
--cc=hca@linux.ibm.com \
--cc=hpa@zytor.com \
--cc=hughd@google.com \
--cc=jack@suse.cz \
--cc=jcmvbkbc@gmail.com \
--cc=jfalempe@redhat.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-parisc@vger.kernel.org \
--cc=linux-s390@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=luto@kernel.org \
--cc=max.kellermann@ionos.com \
--cc=mhocko@suse.com \
--cc=mingo@redhat.com \
--cc=mpe@ellerman.id.au \
--cc=nysal@linux.ibm.com \
--cc=osalvador@suse.de \
--cc=peterz@infradead.org \
--cc=rientjes@google.com \
--cc=rppt@kernel.org \
--cc=shakeel.butt@linux.dev \
--cc=sparclinux@vger.kernel.org \
--cc=surenb@google.com \
--cc=svens@linux.ibm.com \
--cc=tglx@linutronix.de \
--cc=thuth@redhat.com \
--cc=vbabka@suse.cz \
--cc=viro@zeniv.linux.org.uk \
--cc=vishal.moola@gmail.com \
--cc=weixugc@google.com \
--cc=willy@infradead.org \
--cc=x86@kernel.org \
--cc=yuanchu@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).