[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <925480c3-d0ff-4f24-ada0-966ad9a83080@suse.cz>
Date: Mon, 1 Sep 2025 17:47:54 +0200
From: Vlastimil Babka <vbabka@...e.cz>
To: Lorenzo Stoakes <lorenzo.stoakes@...cle.com>,
Max Kellermann <max.kellermann@...os.com>
Cc: akpm@...ux-foundation.org, david@...hat.com, axelrasmussen@...gle.com,
yuanchu@...gle.com, willy@...radead.org, hughd@...gle.com, mhocko@...e.com,
linux-kernel@...r.kernel.org, linux-mm@...ck.org, Liam.Howlett@...cle.com,
rppt@...nel.org, surenb@...gle.com, vishal.moola@...il.com,
linux@...linux.org.uk, James.Bottomley@...senpartnership.com, deller@....de,
agordeev@...ux.ibm.com, gerald.schaefer@...ux.ibm.com, hca@...ux.ibm.com,
gor@...ux.ibm.com, borntraeger@...ux.ibm.com, svens@...ux.ibm.com,
davem@...emloft.net, andreas@...sler.com, dave.hansen@...ux.intel.com,
luto@...nel.org, peterz@...radead.org, tglx@...utronix.de, mingo@...hat.com,
bp@...en8.de, x86@...nel.org, hpa@...or.com, chris@...kel.net,
jcmvbkbc@...il.com, viro@...iv.linux.org.uk, brauner@...nel.org,
jack@...e.cz, weixugc@...gle.com, baolin.wang@...ux.alibaba.com,
rientjes@...gle.com, shakeel.butt@...ux.dev, thuth@...hat.com,
broonie@...nel.org, osalvador@...e.de, jfalempe@...hat.com,
mpe@...erman.id.au, nysal@...ux.ibm.com,
linux-arm-kernel@...ts.infradead.org, linux-parisc@...r.kernel.org,
linux-s390@...r.kernel.org, sparclinux@...r.kernel.org,
linux-fsdevel@...r.kernel.org
Subject: Re: [PATCH v5 02/12] mm: constify pagemap related test functions for
improved const-correctness
On 9/1/25 17:14, Lorenzo Stoakes wrote:
> On Mon, Sep 01, 2025 at 04:50:50PM +0200, Max Kellermann wrote:
>> On Mon, Sep 1, 2025 at 4:25 PM Lorenzo Stoakes
>> <lorenzo.stoakes@...cle.com> wrote:
>> > 1. (most useful) Const pointer (const <type> *<param>) means that the dereffed
>> > value is const, so *<param> = <val> or <param>-><field> = <val> are prohibited.
>>
>> Only this was what my initial patch was about.
>
> Right agreed then.
>
>>
>> > 2. (less useful) We can't modify the actual pointer value either, so
>> > e.g. <param> = <new param> is prohibited.
>>
>> This wasn't my idea, it was Andrew Morton's idea, supported by Yuanchu Xie:
>> https://lore.kernel.org/lkml/CAJj2-QHVC0QW_4X95LLAnM=1g6apH==-OXZu65SVeBj0tSUcBg@mail.gmail.com/
>
> Andrew said:
>
> "Not that I'm suggesting that someone go in and make this change."
>
> And Yuanchu said:
>
> "Longer function readability would benefit from that, but it's IMO infeasible to
> do so everywhere."
>
> (he also mentions it'd be good if gcc could wran on it).
>
> So this isn't quite true actually.
I understood it the same, that it would be nice if gcc treated incoming
params (i.e. pointers, not pointed-to values) as const and warn otherwise,
but not suggesting we should start doing that manually.
I personally agree that adding those extra "const" is of little value and
makes the function definition lines longer and harder to read and so would
rather not add those.
I mean we could first collectively decide (and that's not a review
half-suggesting we do them) that we want them, and document that, but AFAIK
that's not the case yet. While there's already an agreement that const
pointed-to values is a good thing and nobody objects that.
Powered by blists - more mailing lists