Re: [PATCH v4 11/11] mm/mempolicy: extend set_mempolicy2 and mbind2 to support weighted interleave

From: Gregory Price
Date: Tue Dec 19 2023 - 13:18:15 EST


On Tue, Dec 19, 2023 at 11:07:10AM +0800, Huang, Ying wrote:
> Gregory Price <gourry.memverge@xxxxxxxxx> writes:
>
> > diff --git a/include/uapi/linux/mempolicy.h b/include/uapi/linux/mempolicy.h
> > index ec1402dae35b..16fedf966166 100644
> > --- a/include/uapi/linux/mempolicy.h
> > +++ b/include/uapi/linux/mempolicy.h
> > @@ -33,6 +33,7 @@ struct mpol_args {
> > __u16 mode_flags;
> > __s32 home_node; /* mbind2: policy home node */
> > __aligned_u64 pol_nodes;
> > + __aligned_u64 il_weights; /* size: pol_maxnodes * sizeof(char) */
> > __u64 pol_maxnodes;
> > __s32 policy_node; /* get_mempolicy: policy node info */
> > };
>
> You break the ABI you introduced earlier in the patchset. Although they
> are done within a patchset, I don't think that it's a good idea. I
> suggest to finalize the ABI in the first place. Otherwise, people check
> git log will be confused by ABI broken. This makes it easier to be
> reviewed too.
>

This is a result of fixing alignment/holes (suggested by Arnd) and my
not dropping policy_node, which I'd originally planned to do.

I figured that whenever we decided to move forward, mempolicy2 and
mbind2 syscalls would end up squashed into a single commit for the
purpose of ensuring the feature goes in as a whole. I can fix this
though.

~Gregory