[PATCH 0/41] [Hirsute/linux-azure] Enable arm64

Tim Gardner tim.gardner at canonical.com
Thu Nov 4 12:54:08 UTC 2021


BugLink: https://bugs.launchpad.net/bugs/1949770

SRU Justification

[Impact]

Microsoft has asked to enable arm64 in Azure 5.11 and subsequent kernels.
This is a preview which will be used to test arm64 as well as ensure
that nothing has been broken in x64 land.

[Test Case]

Microsoft tested.

[Where things could go wrong]

Some of the patches touch common PCI code. Device detection could be impacted.

[Other Info]

SF: #00310705

The following changes since commit 5d3c090ec0e25a272da08305b377a2d2aede0109:

  UBUNTU: [Config] CONFIG_MICROSOFT_MANA=y (2021-11-02 11:53:39 -0600)

are available in the Git repository at:

  git://git.launchpad.net/~timg-tpi/ubuntu/+source/linux/+git/hirsute cranky/azure

for you to fetch changes up to c2982e17c3704b205a08db13dac5f72ea9cce4b0:

  UBUNTU: [Packaging] linux-azure: Temporally disable signed image for the arm64 preview kernel (2021-11-04 06:40:27 -0600)

----------------------------------------------------------------
Ani Sinha (1):
      x86/hyperv: fix for unwanted manipulation of sched_clock when TSC marked unstable

Arnd Bergmann (1):
      PCI: hv: Generify PCI probing

Boqun Feng (7):
      PCI: Introduce domain_nr in pci_host_bridge
      PCI: Support populating MSI domains of root buses via bridges
      arm64: PCI: Restructure pcibios_root_bridge_prepare()
      arm64: PCI: Support root bridge preparation for Hyper-V
      PCI: hv: Set ->domain_nr of pci_host_bridge at probing time
      PCI: hv: Turn on the host bridge probing on ARM64
      PCI: hv: Set up MSI domain at bridge probing time

Joseph Salisbury (2):
      x86/hyperv: Move hv_do_rep_hypercall to asm-generic
      drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status

Marcelo Henrique Cerri (2):
      UBUNTU: [Packaging] linux-azure: Add packaging support for arm64
      UBUNTU: [Packaging] linux-azure: Temporally disable signed image for the arm64 preview kernel

Michael Kelley (22):
      Drivers: hv: vmbus: Move Hyper-V page allocator to arch neutral code
      x86/hyper-v: Move hv_message_type to architecture neutral module
      Drivers: hv: Redo Hyper-V synthetic MSR get/set functions
      Drivers: hv: vmbus: Move hyperv_report_panic_msg to arch neutral code
      Drivers: hv: vmbus: Handle auto EOI quirk inline
      Drivers: hv: vmbus: Move handling of VMbus interrupts
      clocksource/drivers/hyper-v: Handle vDSO differences inline
      clocksource/drivers/hyper-v: Handle sched_clock differences inline
      clocksource/drivers/hyper-v: Set clocksource rating based on Hyper-V feature
      clocksource/drivers/hyper-v: Move handling of STIMER0 interrupts
      Drivers: hv: Move Hyper-V extended capability check to arch neutral code
      UBUNTU: SAUCE: asm-generic: hyperv: Fix incorrect architecture dependencies
      arm64: hyperv: Add Hyper-V hypercall and register access utilities
      UBUNTU: SAUCE: arm64: hyperv: Add Hyper-V clocksource/clockevent support
      UBUNTU: SAUCE: arm64: hyperv: Add kexec and panic handlers
      UBUNTU: SAUCE: arm64: hyperv: Initialize hypervisor on boot
      arm64: efi: Export screen_info
      Drivers: hv: Make portions of Hyper-V init code be arch neutral
      Drivers: hv: Add arch independent default functions for some Hyper-V handlers
      drivers: hv: Decouple Hyper-V clock/timer code from VMbus drivers
      Drivers: hv: Move Hyper-V misc functionality to arch-neutral code
      Drivers: hv: Enable Hyper-V code to be built on ARM64

Sudeep Holla (1):
      arm64: smccc: Add support for SMCCCv1.2 extended input/output registers

Sunil Muthuswamy (1):
      x86/Hyper-V: Support for free page reporting

Vasanth (1):
      drivers: hv: Fix whitespace errors

Wei Liu (3):
      asm-generic/hyperv: change HV_CPU_POWER_MANAGEMENT to HV_CPU_MANAGEMENT
      x86/hyperv: detect if Linux is the root partition
      clocksource/hyperv: use MSR-based access if running as root

 MAINTAINERS                                        |    3 +
 arch/arm64/Kbuild                                  |    1 +
 arch/arm64/hyperv/Makefile                         |    2 +
 arch/arm64/hyperv/hv_core.c                        |  181 ++
 arch/arm64/hyperv/mshyperv.c                       |  191 ++
 arch/arm64/include/asm/hyperv-tlfs.h               |   69 +
 arch/arm64/include/asm/mshyperv.h                  |   72 +
 arch/arm64/kernel/asm-offsets.c                    |    9 +
 arch/arm64/kernel/efi.c                            |    1 +
 arch/arm64/kernel/pci.c                            |   29 +-
 arch/arm64/kernel/setup.c                          |    4 +
 arch/arm64/kernel/smccc-call.S                     |   57 +
 arch/x86/hyperv/hv_apic.c                          |   16 +-
 arch/x86/hyperv/hv_init.c                          |  128 +-
 arch/x86/hyperv/mmu.c                              |    8 +-
 arch/x86/hyperv/nested.c                           |    8 +-
 arch/x86/include/asm/hyperv-tlfs.h                 |  141 +-
 arch/x86/include/asm/mshyperv.h                    |  101 +-
 arch/x86/kernel/cpu/mshyperv.c                     |   69 +-
 debian.azure/abi/5.11.0-1020.21/arm64/azure.ignore |    1 +
 .../abi/5.11.0-1020.21/arm64/azure.ignore.compiler |    1 +
 .../abi/5.11.0-1020.21/arm64/azure.ignore.modules  |    1 +
 .../5.11.0-1020.21/arm64/azure.ignore.retpoline    |    1 +
 debian.azure/abi/5.11.0-1020.21/arm64/ignore       |    1 +
 debian.azure/config/amd64/config.common.amd64      |   37 +
 debian.azure/config/annotations                    |  190 +-
 debian.azure/config/arm64/config.common.arm64      |   40 +
 debian.azure/config/arm64/config.flavour.azure     |    3 +
 debian.azure/config/config.common.ubuntu           | 2135 +++++++++++++++++++-
 debian.azure/control.d/flavour-control.stub        |    2 +-
 debian.azure/control.d/vars.azure                  |    4 +-
 debian.azure/control.stub.in                       |    9 +-
 debian.azure/d-i/kernel-versions                   |    1 +
 debian.azure/etc/getabis                           |    1 +
 debian.azure/etc/kernelconfig                      |    2 +-
 debian.azure/rules.d/amd64.mk                      |    2 +-
 debian.azure/rules.d/arm64.mk                      |   28 +
 drivers/Makefile                                   |    2 +-
 drivers/clocksource/hyperv_timer.c                 |  269 ++-
 drivers/hv/Kconfig                                 |    8 +-
 drivers/hv/Makefile                                |    3 +
 drivers/hv/channel.c                               |    2 +-
 drivers/hv/connection.c                            |    2 +-
 drivers/hv/hv.c                                    |   95 +-
 drivers/hv/hv_balloon.c                            |   89 +
 drivers/hv/hv_common.c                             |  284 +++
 drivers/hv/hv_util.c                               |    5 -
 drivers/hv/vmbus_drv.c                             |   89 +-
 drivers/pci/controller/pci-hyperv.c                |   88 +-
 drivers/pci/probe.c                                |   12 +-
 include/asm-generic/hyperv-tlfs.h                  |   72 +-
 include/asm-generic/mshyperv.h                     |   84 +-
 include/clocksource/hyperv_timer.h                 |   14 +-
 include/linux/arm-smccc.h                          |   55 +
 include/linux/pci.h                                |   11 +
 55 files changed, 4083 insertions(+), 650 deletions(-)
 create mode 100644 arch/arm64/hyperv/Makefile
 create mode 100644 arch/arm64/hyperv/hv_core.c
 create mode 100644 arch/arm64/hyperv/mshyperv.c
 create mode 100644 arch/arm64/include/asm/hyperv-tlfs.h
 create mode 100644 arch/arm64/include/asm/mshyperv.h
 create mode 100644 debian.azure/abi/5.11.0-1020.21/arm64/azure.ignore
 create mode 100644 debian.azure/abi/5.11.0-1020.21/arm64/azure.ignore.compiler
 create mode 100644 debian.azure/abi/5.11.0-1020.21/arm64/azure.ignore.modules
 create mode 100644 debian.azure/abi/5.11.0-1020.21/arm64/azure.ignore.retpoline
 create mode 100644 debian.azure/abi/5.11.0-1020.21/arm64/ignore
 create mode 100644 debian.azure/config/arm64/config.common.arm64
 create mode 100644 debian.azure/config/arm64/config.flavour.azure
 create mode 100644 debian.azure/rules.d/arm64.mk
 create mode 100644 drivers/hv/hv_common.c




More information about the kernel-team mailing list