Re: [RFC v6 00/13] s390x cleanup

2021-07-05 Thread Cornelia Huck
On Wed, Jun 30 2021, Cornelia Huck  wrote:

> On Tue, Jun 29 2021, "Cho, Yu-Chen"  wrote:
>
>> this is the next version of a cleanup series for s390x.
>>
>
> (...)
>
>> Cho, Yu-Chen (13):
>>   target/s390x: meson: add target_user_arch
>>   hw/s390x: rename tod-qemu.c to tod-tcg.c
>>   hw/s390x: only build tod-tcg from the CONFIG_TCG build
>>   hw/s390x: tod: make explicit checks for accelerators when initializing
>>   target/s390x: remove tcg-stub.c
>>   target/s390x: start moving TCG-only code to tcg/
>>   target/s390x: move sysemu-only code out to cpu-sysemu.c
>>   target/s390x: split cpu-dump from helper.c
>>   target/s390x: make helper.c sysemu-only
>>   target/s390x: use kvm_enabled() to wrap call to kvm_s390_get_hpage_1m
>>   target/s390x: remove kvm-stub.c
>>   target/s390x: move kvm files into kvm/
>>   target/s390x: split sysemu part of cpu models
>
> I think this generally looks fine.
>
> However, I'd like to have a second pair of eyes look at this, especially
> at the cpu models.

Just a short note from my side: I'm planning to send a pull request
(late) this week, so having a version that is ready to merge before that
would be nice :)




Re: [RFC v6 00/13] s390x cleanup

2021-06-30 Thread Cornelia Huck
On Tue, Jun 29 2021, "Cho, Yu-Chen"  wrote:

> this is the next version of a cleanup series for s390x.
>

(...)

> Cho, Yu-Chen (13):
>   target/s390x: meson: add target_user_arch
>   hw/s390x: rename tod-qemu.c to tod-tcg.c
>   hw/s390x: only build tod-tcg from the CONFIG_TCG build
>   hw/s390x: tod: make explicit checks for accelerators when initializing
>   target/s390x: remove tcg-stub.c
>   target/s390x: start moving TCG-only code to tcg/
>   target/s390x: move sysemu-only code out to cpu-sysemu.c
>   target/s390x: split cpu-dump from helper.c
>   target/s390x: make helper.c sysemu-only
>   target/s390x: use kvm_enabled() to wrap call to kvm_s390_get_hpage_1m
>   target/s390x: remove kvm-stub.c
>   target/s390x: move kvm files into kvm/
>   target/s390x: split sysemu part of cpu models

I think this generally looks fine.

However, I'd like to have a second pair of eyes look at this, especially
at the cpu models.




[RFC v6 00/13] s390x cleanup

2021-06-29 Thread Cho, Yu-Chen
this is the next version of a cleanup series for s390x.

v5 -> v6:

* target/s390x: start moving TCG-only code to tcg/
  - keep the old pattern in MAINTAINERS (Cornelia)

* target/s390x: make helper.c sysemu-only
  - fixed typo

v4 -> v5:
* "target/s390x: start moving TCG-only code to tcg/"
  - add change to MAINTAINERS file

* "target/s390x: move sysemu-only code out to cpu-sysemu.c"
  - make use of SysemuCPUOps s390_sysemu_ops to handle

* "target/s390x: split cpu-dump from helper.c"
  - add description to explain why split cpu-dump from helper.c

* "target/s390x: make helper.c sysemu-only" 
  - mention at the beginning of this file that this is sysemu only
(Cornelia)

* "target/s390x: remove kvm-stub.c"
  - add additional comment to explain the function can be
removed (Thomas)

* "target/s390x: move kvm files into kvm/"
   - add change to MAINTAINERS file

* "target/s390x: split sysemu part of cpu models"
   - add change to MAINTAINERS file

* "MAINTAINERS: update s390x directories"
  - removed, squash this in respectively:
#6 target/s390x: start moving TCG-only code to tcg/
#12 target/s390x: move kvm files into kvm/
#13 target/s390x: split sysemu part of cpu models

v3 -> v4: take s390x part from Claudio and modify for the current master

* "target/s390x: meson: add target_user_arch"
  - new patch, add target_user_arch to avoid the proliferation of #ifdef
in target code.

v2 -> v3: minor changes

* "hw/s390x: rename tod-qemu.c to tod-tcg.c": move to the front (David)

* "hw/s390x: only build tod-qemu from the CONFIG_TCG build"
  - move just after, use "tod-tcg" instead

* "hw/s390x: tod: make explicit checks for accelerators when initializing"
  - removed a line break in commit message

* "target/s390x: start moving TCG-only code to tcg/"
  - split the rename s390x-internal.h rename part, do it before the move

* "target/s390x: move kvm files into kvm/"
  - fix broken/missing move of trace events

Cho, Yu-Chen (13):
  target/s390x: meson: add target_user_arch
  hw/s390x: rename tod-qemu.c to tod-tcg.c
  hw/s390x: only build tod-tcg from the CONFIG_TCG build
  hw/s390x: tod: make explicit checks for accelerators when initializing
  target/s390x: remove tcg-stub.c
  target/s390x: start moving TCG-only code to tcg/
  target/s390x: move sysemu-only code out to cpu-sysemu.c
  target/s390x: split cpu-dump from helper.c
  target/s390x: make helper.c sysemu-only
  target/s390x: use kvm_enabled() to wrap call to kvm_s390_get_hpage_1m
  target/s390x: remove kvm-stub.c
  target/s390x: move kvm files into kvm/
  target/s390x: split sysemu part of cpu models

 MAINTAINERS   |   6 +-
 hw/intc/s390_flic_kvm.c   |   2 +-
 hw/s390x/meson.build  |   4 +-
 hw/s390x/s390-stattrib-kvm.c  |   2 +-
 hw/s390x/tod-kvm.c|   2 +-
 hw/s390x/{tod-qemu.c => tod-tcg.c}|   2 +-
 hw/s390x/tod.c|   9 +-
 hw/vfio/ap.c  |   2 +-
 include/hw/s390x/tod.h|   2 +-
 meson.build   |   1 +
 target/s390x/arch_dump.c  |   2 +-
 target/s390x/cpu-dump.c   | 176 
 target/s390x/cpu-sysemu.c | 309 +
 target/s390x/cpu.c| 289 +---
 target/s390x/cpu_models.c | 421 +
 target/s390x/cpu_models_sysemu.c  | 426 ++
 target/s390x/cpu_models_user.c|  20 +
 target/s390x/diag.c   |   7 +-
 target/s390x/gdbstub.c|   2 +-
 target/s390x/helper.c | 162 +--
 target/s390x/interrupt.c  |   6 +-
 target/s390x/ioinst.c |   2 +-
 target/s390x/kvm-stub.c   | 121 -
 target/s390x/{ => kvm}/kvm.c  |   4 +-
 target/s390x/{ => kvm}/kvm_s390x.h|   0
 target/s390x/kvm/meson.build  |  17 +
 target/s390x/kvm/trace-events |   7 +
 target/s390x/kvm/trace.h  |   1 +
 target/s390x/machine.c|   6 +-
 target/s390x/meson.build  |  42 +-
 target/s390x/mmu_helper.c |   4 +-
 target/s390x/{internal.h => s390x-internal.h} |   8 +
 target/s390x/sigp.c   |   2 +-
 target/s390x/tcg-stub.c   |  30 --
 target/s390x/{ => tcg}/cc_helper.c|   2 +-
 target/s390x/{ => tcg}/crypto_helper.c|   2 +-
 target/s390x/{ => tcg}/excp_helper.c  |   2 +-
 target/s390x/{ => tcg}/fpu_helper.c   |   2 +-
 target/s390x/{ => tcg}/insn-data.def  |   0
 target/s390x/{ => tcg}/insn-format.def|   0
 target/s390x/{ => tcg}/int_helper.c   |   2 +-
 target/s390x/{ =>