Linux Hardening
 help / color / mirror / Atom feed
* Re: [RFC PATCH] mm/damon/sysfs: add __counted_by() annotation
       [not found] <20230825020441.65431-1-sj@kernel.org>
@ 2023-08-25 21:32 ` Kees Cook
  2023-08-26  0:54   ` SeongJae Park
  0 siblings, 1 reply; 2+ messages in thread
From: Kees Cook @ 2023-08-25 21:32 UTC (permalink / raw)
  To: SeongJae Park
  Cc: Andrew Morton, damon, linux-mm, linux-kernel, Qing Zhao,
	linux-hardening

On Fri, Aug 25, 2023 at 02:04:41AM +0000, SeongJae Park wrote:
> Commit dd06e72e68bc ("Compiler Attributes: Add __counted_by macro")
> added __counted_by() annotation.  The underlying attribute for the
> feature is still under development, but adopting it can improve the
> readability of the code.  Apply it to four dynamic arrays in DAMON sysfs
> code.
> 
> Signed-off-by: SeongJae Park <sj@kernel.org>
> ---
>  mm/damon/sysfs.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/mm/damon/sysfs.c b/mm/damon/sysfs.c
> index 808a8efe0523..36a176f38726 100644
> --- a/mm/damon/sysfs.c
> +++ b/mm/damon/sysfs.c
> @@ -93,7 +93,7 @@ static const struct kobj_type damon_sysfs_region_ktype = {
> 
>  struct damon_sysfs_regions {
>  	struct kobject kobj;
> -	struct damon_sysfs_region **regions_arr;
> +	struct damon_sysfs_region **regions_arr __counted_by(nr);
>  	int nr;
>  };

Unfortunately this isn't supported yet for non-flexible-array-members:

mm/damon/sysfs.c:96:14: error: 'counted_by' attribute may not be specified for a non-array field
   96 |         struct damon_sysfs_region **regions_arr __counted_by(nr);
      |                                     ^~~~~

We'll have to wait a bit before we can add this patch. Thank you for
getting it ready, though! This support is next in line. :)

The FAM support is likely ready to land, though[1]. I just tested it
today.

-Kees

[1] https://gcc.gnu.org/pipermail/gcc-patches/2023-August/628459.html

-- 
Kees Cook

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [RFC PATCH] mm/damon/sysfs: add __counted_by() annotation
  2023-08-25 21:32 ` [RFC PATCH] mm/damon/sysfs: add __counted_by() annotation Kees Cook
@ 2023-08-26  0:54   ` SeongJae Park
  0 siblings, 0 replies; 2+ messages in thread
From: SeongJae Park @ 2023-08-26  0:54 UTC (permalink / raw)
  To: Kees Cook
  Cc: SeongJae Park, Andrew Morton, damon, linux-mm, linux-kernel,
	Qing Zhao, linux-hardening

Hi Kees,

On Fri, 25 Aug 2023 14:32:34 -0700 Kees Cook <keescook@chromium.org> wrote:

> On Fri, Aug 25, 2023 at 02:04:41AM +0000, SeongJae Park wrote:
> > Commit dd06e72e68bc ("Compiler Attributes: Add __counted_by macro")
> > added __counted_by() annotation.  The underlying attribute for the
> > feature is still under development, but adopting it can improve the
> > readability of the code.  Apply it to four dynamic arrays in DAMON sysfs
> > code.
> > 
> > Signed-off-by: SeongJae Park <sj@kernel.org>
> > ---
> >  mm/damon/sysfs.c | 8 ++++----
> >  1 file changed, 4 insertions(+), 4 deletions(-)
> > 
> > diff --git a/mm/damon/sysfs.c b/mm/damon/sysfs.c
> > index 808a8efe0523..36a176f38726 100644
> > --- a/mm/damon/sysfs.c
> > +++ b/mm/damon/sysfs.c
> > @@ -93,7 +93,7 @@ static const struct kobj_type damon_sysfs_region_ktype = {
> > 
> >  struct damon_sysfs_regions {
> >  	struct kobject kobj;
> > -	struct damon_sysfs_region **regions_arr;
> > +	struct damon_sysfs_region **regions_arr __counted_by(nr);
> >  	int nr;
> >  };
> 
> Unfortunately this isn't supported yet for non-flexible-array-members:
> 
> mm/damon/sysfs.c:96:14: error: 'counted_by' attribute may not be specified for a non-array field
>    96 |         struct damon_sysfs_region **regions_arr __counted_by(nr);
>       |                                     ^~~~~
> 
> We'll have to wait a bit before we can add this patch.

Thank you for checking this and let me know.  Ok, I will wait.

> Thank you for
> getting it ready, though!

Owing to your previous contributions.  Thank you for helping me make DAMON code
better to read :)

> This support is next in line. :)
> 
> The FAM support is likely ready to land, though[1]. I just tested it
> today.
> 
> -Kees
> 
> [1] https://gcc.gnu.org/pipermail/gcc-patches/2023-August/628459.html
> 
> -- 
> Kees Cook
> 


Thanks,
SJ

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-08-26  0:55 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20230825020441.65431-1-sj@kernel.org>
2023-08-25 21:32 ` [RFC PATCH] mm/damon/sysfs: add __counted_by() annotation Kees Cook
2023-08-26  0:54   ` SeongJae Park

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox