[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v3 1/5] x86/pmstat: Check size of PMSTAT_get_pxstat buffers
On Thu, Jun 5, 2025 at 11:10 AM Jan Beulich <jbeulich@xxxxxxxx> wrote: > > On 27.05.2025 17:26, Ross Lagerwall wrote: > > --- a/xen/include/public/sysctl.h > > +++ b/xen/include/public/sysctl.h > > @@ -215,11 +215,22 @@ typedef struct pm_px_val pm_px_val_t; > > DEFINE_XEN_GUEST_HANDLE(pm_px_val_t); > > > > struct pm_px_stat { > > - uint8_t total; /* total Px states */ > > + /* > > + * IN: Number of elements in pt, number of rows/columns in trans_pt > > + * (PMSTAT_get_pxstat) > > + * OUT: total Px states (PMSTAT_get_max_px, PMSTAT_get_pxstat) > > + */ > > + uint8_t total; > > uint8_t usable; /* usable Px states */ > > uint8_t last; /* last Px state */ > > uint8_t cur; /* current Px state */ > > - XEN_GUEST_HANDLE_64(uint64) trans_pt; /* Px transition table */ > > + /* > > + * OUT: Px transition table. This should have total * total elements. > > + * As it is a 2-D array, this will not be copied if it is smaller > > than > > + * the hypervisor's Px transition table. (PMSTAT_get_pxstat) > > + */ > > + XEN_GUEST_HANDLE_64(uint64) trans_pt; > > + /* OUT: This should have total elements (PMSTAT_get_pxstat) */ > > XEN_GUEST_HANDLE_64(pm_px_val_t) pt; > > }; > > Commentary here is still confusing imo: Since "total" now has two meanings, > saying "This should have .." in OUT: descriptions is ambiguous. Imo for > trans_pt you want to say something like "will not be copied if input total is > less than output total", and for pt "the number of elements copied is the > smaller of input and output total". > > If that's okay with you, I can edit things along these lines while committing, > at which point > Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx> > Sure, that's fine with me. Thanks, Ross
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |