On 07.08.2023 20:51, Jason Andryuk wrote: > Add a union and struct so that most of the scaling variables of struct > xen_get_cpufreq_para are within in a binary-compatible layout. This > allows cppc_para to live in the larger union and use uint32_ts - struct > xen_cppc_para will be 10 uint32_t's. > > The new scaling struct is 3 * uint32_t + 16 bytes CPUFREQ_NAME_LEN + 4 * > uint32_t for xen_ondemand = 11 uint32_t. That means the old size is > retained, int32_t turbo_enabled doesn't move and it's binary compatible. > > The out-of-context memcpy() in xc_get_cpufreq_para() now handles the > copying of the fields removed there. > > Signed-off-by: Jason Andryuk <[email protected]> > Reviewed-by: Jan Beulich <[email protected]> > --- > v8: > Add BUILD_BUG_ON checks for structs xc_get_cpufreq_para & xen_get_cpufreq_para > > v6: > Add Jan's Reviewed-by > > v5: > Expand commit message > Change comment to driver/governor > --- > tools/include/xenctrl.h | 22 ++++++++++-------- > tools/libs/ctrl/xc_pm.c | 46 ++++++++++++++++++++++++++++++++----- > tools/misc/xenpm.c | 24 +++++++++---------- > xen/drivers/acpi/pmstat.c | 27 +++++++++++----------- > xen/include/public/sysctl.h | 22 ++++++++++-------- > 5 files changed, 92 insertions(+), 49 deletions(-)
Since the note in the cover letter may not be noticed - this wants looking at by a tool stack person. Thanks, Jan
