[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <37f4ed66bda6ab275b1d9b84282a161e433a473f.camel@perches.com>
Date: Wed, 05 Nov 2025 01:22:27 -0800
From: Joe Perches <joe@...ches.com>
To: Sakari Ailus <sakari.ailus@....fi>, Sakari Ailus
<sakari.ailus@...ux.intel.com>, Andy Whitcroft <apw@...onical.com>
Cc: linux-kernel@...r.kernel.org, Dwaipayan Ray <dwaipayanray1@...il.com>,
Lukas Bulwahn <lukas.bulwahn@...il.com>, Greg Kroah-Hartman
<gregkh@...uxfoundation.org>
Subject: Re: [PATCH 1/1] checkpatch: Deprecate container_of() in favour of
container_of_const()
On Wed, 2025-11-05 at 10:08 +0200, Sakari Ailus wrote:
> Ping.
>
> On Mon, Aug 11, 2025 at 11:57:31AM +0300, Sakari Ailus wrote:
> > container_of() discards constness of its first argument and thus its use
> > may result in inadvertly unconstifying an object that is const. While
> > container_of_const() addresses this problem, the vast majority of new uses
> > of the two use the container_of() variant lacking the check.
> >
> > Stem the flow of new container_of() use by adding it to the list of
> > deprecated functions in scripts/checkpatch.pl. Once all existing
> > container_of() users have been fixed to respect the constness attribute,
> > the check can be added to container_of() and we can switch back to
> > container_of() again.
> >
> > Signed-off-by: Sakari Ailus <sakari.ailus@...ux.intel.com>
> > ---
> > scripts/checkpatch.pl | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> > index 664f7b7a622c..32edebfc1935 100755
> > --- a/scripts/checkpatch.pl
> > +++ b/scripts/checkpatch.pl
> > @@ -859,6 +859,7 @@ our %deprecated_apis = (
> > "kunmap_atomic" => "kunmap_local",
> > "srcu_read_lock_lite" => "srcu_read_lock_fast",
> > "srcu_read_unlock_lite" => "srcu_read_unlock_fast",
> > + "container_of" => "container_of_const",
> > );
> >
> > #Create a search pattern for all these strings to speed up a loop below
> > --
> > 2.39.5
> >
> >
Powered by blists - more mailing lists