RESEND (sorry for noise). Quotes in email address issue meant the server bounced it. On Thu, 17 Oct 2024 09:52:27 +0100 Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> wrote: > On Sat, 12 Oct 2024 18:44:23 +0800 > Zhao Liu <zhao1.liu@xxxxxxxxx> wrote: > > > Cache topology needs to be defined based on CPU topology levels. Thus, > > define CPU topology enumeration in qapi/machine.json to make it generic > > for all architectures. > > > > To match the general topology naming style, rename CPU_TOPO_LEVEL_* to > > CPU_TOPOLOGY_LEVEL_*, and rename SMT and package levels to thread and > > socket. > > > > Also, enumerate additional topology levels for non-i386 arches, and add > > a CPU_TOPOLOGY_LEVEL_DEFAULT to help future smp-cache object to work > > with compatibility requirement of arch-specific cache topology models. > > > > Signed-off-by: Zhao Liu <zhao1.liu@xxxxxxxxx> > > Tested-by: Yongwei Ma <yongwei.ma@xxxxxxxxx> > LGTM with one incredibly trivial comment inline. > > Reviewed-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > > > #endif /* HW_I386_TOPOLOGY_H */ > > diff --git a/qapi/machine-common.json b/qapi/machine-common.json > > index b64e4895cfd7..db3e499fb382 100644 > > --- a/qapi/machine-common.json > > +++ b/qapi/machine-common.json > > @@ -5,7 +5,7 @@ > > # See the COPYING file in the top-level directory. > > > > ## > > -# = Machines S390 data types > > +# = Common machine types > > ## > > > > ## > > @@ -18,3 +18,47 @@ > > ## > > { 'enum': 'S390CpuEntitlement', > > 'data': [ 'auto', 'low', 'medium', 'high' ] } > > + > > +## > > +# @CpuTopologyLevel: > > +# > > +# An enumeration of CPU topology levels. > > +# > > +# @invalid: Invalid topology level. > > Really trivial but why a capital I on Invalid here but not the > t of thread below? > > > +# > > +# @thread: thread level, which would also be called SMT level or > > +# logical processor level. The @threads option in > > +# SMPConfiguration is used to configure the topology of this > > +# level. >