Re: [PATCH] md/md-multipath: Convert "struct mpconf" to flexible array

From: Kees Cook
Date: Fri Dec 08 2023 - 12:28:02 EST


On Thu, Dec 07, 2023 at 09:33:17PM -0800, Song Liu wrote:
> On Mon, Dec 4, 2023 at 2:20 PM Kees Cook <keescook@xxxxxxxxxxxx> wrote:
> >
> > On Sun, Dec 03, 2023 at 08:48:06PM +0100, Christophe JAILLET wrote:
> > > The 'multipaths' field of 'struct mpconf' can be declared as a flexible
> > > array.
> > >
> > > The advantages are:
> > > - 1 less indirection when accessing to the 'multipaths' array
> > > - save 1 pointer in the structure
> > > - improve memory usage
> > > - give the opportunity to use __counted_by() for additional safety
> > >
> > > Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
> >
> > This looks like a really nice conversion. I haven't run-tested this, but
> > it reads correct to me.
>
> Agreed this is a good optimization. However, since MD_MULTIPATH is
> already marked as deprecated. I don't think we should ship further
> changes to it.

Hm, that seems like a weird catch-22 to me. I would say we should
continue to improve any code in the kernel that people spend time to
work on, or we should remove that code entirely. Should MD_MULTIPATH be
removed? How long has it been deprecated? (We just had an LTS release,
so doing removal now is a good time...)

--
Kees Cook