On 24.04.2024 05:34, Henry Wang wrote: > --- a/xen/include/public/sysctl.h > +++ b/xen/include/public/sysctl.h > @@ -1197,7 +1197,9 @@ struct xen_sysctl_dt_overlay { > #define XEN_SYSCTL_DT_OVERLAY_ADD 1 > #define XEN_SYSCTL_DT_OVERLAY_REMOVE 2 > uint8_t overlay_op; /* IN: Add or remove. */ > - uint8_t pad[3]; /* IN: Must be zero. */ > + bool domain_mapping; /* IN: True of False. */ > + uint8_t pad[2]; /* IN: Must be zero. */ > + uint32_t domain_id; > };
If you merely re-purposed padding fields, all would be fine without bumping the interface version. Yet you don't, albeit for an unclear reason: Why uint32_t rather than domid_t? And on top of that - why a separate boolean when you could use e.g. DOMID_INVALID to indicate "no domain mapping"? That said - anything taking a domain ID is certainly suspicious in a sysctl. Judging from the description you really mean this to be a domctl. Anything else will require extra justification. Jan