qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] qapi/misc.json is too big, let's bite off a few chunks


From: Eduardo Habkost
Subject: Re: [Qemu-devel] qapi/misc.json is too big, let's bite off a few chunks
Date: Tue, 11 Jun 2019 18:20:09 -0300

On Fri, Jun 07, 2019 at 02:45:01PM +0200, Markus Armbruster wrote:
> Paolo Bonzini <address@hidden> writes:
> 
> > On 07/06/19 10:25, Markus Armbruster wrote:
> >> Paolo Bonzini <address@hidden> writes:
> >> 
> >>> On 23/05/19 18:14, Markus Armbruster wrote:
> >>>> * Machine core (Eduardo, Marcel)
> >>>>
> >>>>   query-machines, query-current-machine, 
> >>>>
> >>>>   ~60 lines.  Hardly worthwhile from a "let's shrink misc.json" point of
> >>>>   view.  Might be worthwhile from a "let's make get_maintainers.pl
> >>>>   work".
> >>>>
> >>>> * CPUs (Paolo, Richard)
> >>>>
> >>>>   query-cpus, query-cpus-fast
> >>>>
> >>>>   ~300 lines.  The commands are implemented in cpus.c, which MAINTAINERS
> >>>>   covers both under "Main loop" and under "Guest CPU cores (TCG) /
> >>>>   Overall".  Neither feels right to me for these QMP commands.
> >>>>
> >>>> * NUMA (Eduardo)
> >>>>
> >>>>   query-memdev, set-numa-node
> >>>>
> >>>>   ~200 lines.
> >>>
> >>> I would move all three of these and add a new entry to MAINTAINERS.
> >> 
> >> Double-checking: do you propose to move all three to a single new QAPI
> >> module, with a new MAINTAINERS entry covering just the new QAPI module?
> >> If yes, care to propose a QAPI module file name, a MAINTAINERS head
> >> line, and maintainers?
> >
> > Just one, qapi/machine.json, with a MAINTAINERS patch based on this one.
> 
> Okay, I'd like to take care of that.
> 
> >  We could probably create a new directory hw/machine too.
> 
> I'd prefer to leave that to you, because making you explain to me what
> exactly you want moved is likely more work for both of us :)
> 
> > diff --git a/MAINTAINERS b/MAINTAINERS
> > index a96829ea83..9bf3e6b670 100644
> > --- a/MAINTAINERS
> > +++ b/MAINTAINERS
> > @@ -1274,8 +1274,12 @@ S: Supported
> >  F: hw/core/machine.c
> >  F: hw/core/null-machine.c
> >  F: hw/cpu/cluster.c
> > +F: numa.c
> > +F: qom/cpu.c
> >  F: include/hw/boards.h
> >  F: include/hw/cpu/cluster.h
> > +F: include/qom/cpu.h
> > +F: include/sysemu/numa.h
> >  T: git https://github.com/ehabkost/qemu.git machine-next
> >
> >  Xtensa Machines
> > @@ -1839,12 +1843,6 @@ M: Markus Armbruster <address@hidden>
> >  S: Supported
> >  F: scripts/coverity-model.c
> >
> > -CPU
> > -L: address@hidden
> > -S: Supported
> > -F: qom/cpu.c
> > -F: include/qom/cpu.h
> > -
> >  Device Tree
> >  M: Alistair Francis <address@hidden>
> >  R: David Gibson <address@hidden>
> > @@ -1947,13 +1945,6 @@ W: http://info.iet.unipi.it/~luigi/netmap/
> >  S: Maintained
> >  F: net/netmap.c
> >
> > -NUMA
> > -M: Eduardo Habkost <address@hidden>
> > -S: Maintained
> > -F: numa.c
> > -F: include/sysemu/numa.h
> > -T: git https://github.com/ehabkost/qemu.git machine-next
> > -
> >  Host Memory Backends
> >  M: Eduardo Habkost <address@hidden>
> >  M: Igor Mammedov <address@hidden>
> 
> This merges MAINTAINERS section "NUMA" into "Machine core" (with section
> "CPU" thrown in for good measure).  Moving their QAPI schema bits from
> misc.json to new machine.json then makes sense.  Good.
> 
> The part I'm unsure about is item "CPUs" from my list, i.e. query-cpus
> and query-cpus-fast.  If I move these QAPI schema bits to machine.json
> as well, then the QAPI schema for query-cpus, query-cpus-fast is covered
> by section "Machine core", while the C code (in cpus.c) is covered by
> "Main loop" and "Guest CPU cores (TCG) / Overall".  I hate that.  Would
> you like me to try moving the C code out of cpus.c so it can be covered
> by "Machine core"?

Some portions of cpus.c seem to belong to qom/cpu.c, other
portions seem to belong to hw/core/machine.c, others to accel/*.
To be honest, I don't really know what kind of code would really
belong to cpus.c (the comment block at the top just says "QEMU
System Emulator").  Cleaning this up would be very welcome.

In other words: yes, if you try to move the QMP query-cpu* code
outside cpus.c to Machine Core, I wouldn't mind at all.

-- 
Eduardo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]