linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@linux-foundation.org>
To: Max Kellermann <max.kellermann@ionos.com>
Cc: david@redhat.com, lorenzo.stoakes@oracle.com,
	Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org,
	surenb@google.com, mhocko@suse.com, linux-mm@kvack.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH] mm: add `const` to lots of pointer parameters
Date: Wed, 27 Aug 2025 14:48:32 -0700	[thread overview]
Message-ID: <20250827144832.87d2f1692fe61325628710f4@linux-foundation.org> (raw)
In-Reply-To: <20250827192233.447920-1-max.kellermann@ionos.com>

On Wed, 27 Aug 2025 21:22:33 +0200 Max Kellermann <max.kellermann@ionos.com> wrote:

> For improved const-correctness.

OK...

>
> --- a/include/linux/fs.h
> +++ b/include/linux/fs.h
> @@ -537,7 +537,7 @@ struct address_space {
>  /*
>   * Returns true if any of the pages in the mapping are marked with the tag.
>   */
> -static inline bool mapping_tagged(struct address_space *mapping, xa_mark_t tag)
> +static inline bool mapping_tagged(const struct address_space *mapping, xa_mark_t tag)
>  {
>  	return xa_marked(&mapping->i_pages, tag);
>  }

I'd actually be in favor of making all incoming args const (C should
have made this the default).

Because modifying an incoming arg is just obnoxious.  That value should
be viewed as part of the calling environment and should not be altered.

Try modifying a lengthy function and wanting to get at an incoming arg
only to find that something in the preceding 100 lines has gone and
messed with it.  Or forget to check fr this and get a nasty surprise when
testing.

Not that I'm suggesting that someone go in and make this change.

On the other hand, it would be neat if gcc had an option to warn when
someone does this.  I bet it would be simple to add.


  reply	other threads:[~2025-08-27 21:48 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-08-27 19:22 Max Kellermann
2025-08-27 21:48 ` Andrew Morton [this message]
2025-08-28  1:48   ` Liam R. Howlett
2025-08-28  2:47     ` Andrew Morton
2025-08-28 12:09   ` Lorenzo Stoakes
2025-08-28 12:16     ` Max Kellermann
2025-08-28 12:35       ` Lorenzo Stoakes
2025-08-28 12:42         ` Max Kellermann
2025-08-28 12:49           ` Lorenzo Stoakes
2025-08-28 12:24 ` Lorenzo Stoakes
2025-08-28 12:28   ` David Hildenbrand
2025-08-28 12:40     ` Max Kellermann
2025-08-28 12:43       ` Lorenzo Stoakes
2025-08-28 12:51         ` Max Kellermann
2025-08-28 13:00       ` David Hildenbrand
2025-08-28 12:55 ` Lorenzo Stoakes

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=20250827144832.87d2f1692fe61325628710f4@linux-foundation.org \
    --to=akpm@linux-foundation.org \
    --cc=Liam.Howlett@oracle.com \
    --cc=david@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=lorenzo.stoakes@oracle.com \
    --cc=max.kellermann@ionos.com \
    --cc=mhocko@suse.com \
    --cc=rppt@kernel.org \
    --cc=surenb@google.com \
    --cc=vbabka@suse.cz \
    /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