qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2 0/7] ppc: compute cpu_dt_id in the machine code
@ 2016-07-01 22:41 Greg Kurz
  2016-07-01 22:41 ` [Qemu-devel] [PATCH v2 1/7] spapr: Ensure thread0 of CPU core is always realized first Greg Kurz
                   ` (7 more replies)
  0 siblings, 8 replies; 24+ messages in thread
From: Greg Kurz @ 2016-07-01 22:41 UTC (permalink / raw)
  To: David Gibson
  Cc: Benjamin Herrenschmidt, qemu-devel, Alexander Graf, qemu-ppc,
	Cedric Le Goater, Bharata B Rao, Scott Wood, Igor Mammedov

This series is a sequel to the discussion on a patch from Ben's powernv
patchset:

        http://patchwork.ozlabs.org/patch/597153/

Indeed, since the DT is a machine abstraction, it should definitely sit
under hw/ppc and not in the target code:
- all machine types are forced to share the same numbering logic
- user mode does not need that => there are #ifdef everywhere

So this series moves all the current numbering logic to the machine
code.

The patchset was completely re-written according to Igor's valuable
suggestions. The main change is that cpu_dt_id is now computed out
of a cpu_index provided by the machine, instead of bending the code
to use cs->cpu_index.

I resend Bharata's patch without any modification because patch 6 is
based on it (pseries-2.7 support).

I did not see any regression on pseries-2.6, pseries-2.7 and CPU hotplug.

Migration is not impacted because the new cpu_index has the same value
as cs->cpu_index, and thus gives the same guest visible cpu_dt_id.

TODO: find a way for machines to provide their own cpu_dt_id logic.

---

Bharata B Rao (1):
      spapr: Ensure thread0 of CPU core is always realized first

Greg Kurz (6):
      ppc: simplify max_smt initialization in ppc_cpu_realizefn()
      ppc: different creation paths for cpus in system and user mode
      ppc: open code cpu creation for machine types
      ppc: introduce ppc_set_vcpu_dt_id()
      spapr: use ppc_set_vcpu_dt_id() in CPU hotplug code
      ppc: move the cpu_dt_id logic to machine code


 hw/ppc/e500.c               |    2 +
 hw/ppc/mac_newworld.c       |    2 +
 hw/ppc/mac_oldworld.c       |    2 +
 hw/ppc/ppc.c                |   78 +++++++++++++++++++++++++++++++++++++++++++
 hw/ppc/ppc440_bamboo.c      |    2 +
 hw/ppc/ppc4xx_devs.c        |    2 +
 hw/ppc/prep.c               |    2 +
 hw/ppc/spapr.c              |    2 +
 hw/ppc/spapr_cpu_core.c     |   36 +++++++++++++-------
 hw/ppc/virtex_ml507.c       |    2 +
 include/hw/ppc/ppc.h        |    2 +
 target-ppc/cpu.h            |    5 ++-
 target-ppc/translate_init.c |   35 -------------------
 13 files changed, 114 insertions(+), 58 deletions(-)

--
Greg

^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2016-07-04  8:09 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-07-01 22:41 [Qemu-devel] [PATCH v2 0/7] ppc: compute cpu_dt_id in the machine code Greg Kurz
2016-07-01 22:41 ` [Qemu-devel] [PATCH v2 1/7] spapr: Ensure thread0 of CPU core is always realized first Greg Kurz
2016-07-01 22:41 ` [Qemu-devel] [PATCH v2 2/7] ppc: simplify max_smt initialization in ppc_cpu_realizefn() Greg Kurz
2016-07-04  3:53   ` David Gibson
2016-07-01 22:41 ` [Qemu-devel] [PATCH v2 3/7] ppc: different creation paths for cpus in system and user mode Greg Kurz
2016-07-04  7:14   ` Igor Mammedov
2016-07-04  7:40     ` Greg Kurz
2016-07-01 22:41 ` [Qemu-devel] [PATCH v2 4/7] ppc: open code cpu creation for machine types Greg Kurz
2016-07-02  8:06   ` Bharata B Rao
2016-07-02  8:33     ` Greg Kurz
2016-07-04  3:54       ` David Gibson
2016-07-04  6:32         ` Greg Kurz
2016-07-04  8:08           ` [Qemu-devel] [Qemu-ppc] " Greg Kurz
2016-07-04  7:37         ` [Qemu-devel] " Igor Mammedov
2016-07-04  8:09           ` David Gibson
2016-07-01 22:41 ` [Qemu-devel] [PATCH v2 5/7] ppc: introduce ppc_set_vcpu_dt_id() Greg Kurz
2016-07-01 22:42 ` [Qemu-devel] [PATCH v2 6/7] spapr: use ppc_set_vcpu_dt_id() in CPU hotplug code Greg Kurz
2016-07-02  8:14   ` Bharata B Rao
2016-07-02  8:35     ` Greg Kurz
2016-07-01 22:42 ` [Qemu-devel] [PATCH v2 7/7] ppc: move the cpu_dt_id logic to machine code Greg Kurz
2016-07-02  8:15   ` Bharata B Rao
2016-07-02  8:42     ` Greg Kurz
2016-07-02  9:55 ` [Qemu-devel] [PATCH v2 0/7] ppc: compute cpu_dt_id in the " Bharata B Rao
2016-07-02 10:34   ` Greg Kurz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).