mbox series

[v2,0/4] powerpc: stolen time accounting for VIRT_CPU_ACCOUNTING_GEN

Message ID 20220902085316.2071519-1-npiggin@gmail.com (mailing list archive)
Headers show
Series powerpc: stolen time accounting for VIRT_CPU_ACCOUNTING_GEN | expand

Message

Nicholas Piggin Sept. 2, 2022, 8:53 a.m. UTC
pseries provides stolen time accounting when VIRT_CPU_ACCOUNTING_NATIVE
is selected, but not when VIRT_CPU_ACCOUNTING_GEN is. We like GEN
because it's less code in arch/powerpc, allows full nohz, and distros
have moved to it, so this series adds stolen time accounting for GEN,
and moves our pseries configs over to it.

Thanks,
Nick

Since v1:
- Move the KVM patches out of this series to make it smaller.
  I'll post them separately.
- Fix compilation bug in patch 2 due to missing header in patch.
- Add defconfig changes to patch 3.
- Add tidy up patch 4.
- Improve changelogs.

Nicholas Piggin (4):
  powerpc/pseries: Add wait interval counter definitions to struct
    lppaca
  powerpc/pseries: Implement CONFIG_PARAVIRT_TIME_ACCOUNTING
  powerpc/64: Remove PPC64 special case for cputime accounting default
  powerpc/pseries: Move dtl scanning and steal time accounting to
    pseries platform

 .../admin-guide/kernel-parameters.txt         |  6 +-
 arch/powerpc/configs/ppc64_defconfig          |  2 +
 arch/powerpc/configs/pseries_defconfig        |  2 +
 arch/powerpc/include/asm/cputime.h            |  2 +-
 arch/powerpc/include/asm/dtl.h                |  8 --
 arch/powerpc/include/asm/lppaca.h             | 10 +-
 arch/powerpc/include/asm/paravirt.h           | 12 +++
 arch/powerpc/include/asm/paravirt_api_clock.h |  1 +
 arch/powerpc/include/asm/time.h               |  5 +-
 arch/powerpc/kernel/time.c                    | 92 +------------------
 arch/powerpc/platforms/pseries/Kconfig        |  8 ++
 arch/powerpc/platforms/pseries/dtl.c          | 81 ++++++++++++++++
 arch/powerpc/platforms/pseries/lpar.c         | 11 +++
 arch/powerpc/platforms/pseries/setup.c        | 19 ++++
 init/Kconfig                                  |  3 +-
 15 files changed, 156 insertions(+), 106 deletions(-)
 create mode 100644 arch/powerpc/include/asm/paravirt_api_clock.h

Comments

Michael Ellerman Sept. 9, 2022, 12:06 p.m. UTC | #1
On Fri, 2 Sep 2022 18:53:12 +1000, Nicholas Piggin wrote:
> pseries provides stolen time accounting when VIRT_CPU_ACCOUNTING_NATIVE
> is selected, but not when VIRT_CPU_ACCOUNTING_GEN is. We like GEN
> because it's less code in arch/powerpc, allows full nohz, and distros
> have moved to it, so this series adds stolen time accounting for GEN,
> and moves our pseries configs over to it.
> 
> Thanks,
> Nick
> 
> [...]

Applied to powerpc/next.

[1/4] powerpc/pseries: Add wait interval counter definitions to struct lppaca
      https://git.kernel.org/powerpc/c/a8933c8d55c37f4d5eb617b4bdb72b8888b88681
[2/4] powerpc/pseries: Implement CONFIG_PARAVIRT_TIME_ACCOUNTING
      https://git.kernel.org/powerpc/c/0e8a63132800dd8ae5fcb19113f79bea43ea18d9
[3/4] powerpc/64: Remove PPC64 special case for cputime accounting default
      https://git.kernel.org/powerpc/c/02382aff72357727f9eee5107fd32c6cd070f1d6
[4/4] powerpc/pseries: Move dtl scanning and steal time accounting to pseries platform
      https://git.kernel.org/powerpc/c/6ba5aa541aaa079c0ca888f7fe564b2035d5ca0a

cheers