ACK/Cmnt: [PULL][SRU Xenial] Fix booting arm64 guests in OpenStack bionic-rocky

Stefan Bader stefan.bader at canonical.com
Thu Nov 8 18:42:56 UTC 2018


On 02.11.18 00:30, dann frazier wrote:
> BugLink: https://bugs.launchpad.net/bugs/1797092
> 
> Please refer to the bug for an explanation of the problem and how this
> solves it. Most patches are clean cherry-picks, but 3 of them required
> some minor backporting, as noted in the sign-off section
> comments. This series does touch generic code - I've included a
> patch-by-patch regression analysis of that in the [Regression Risk]
> section of the bug template.
> 
> I regression tested on the 2 arm64 servers that I know were supported
> by the 4.4 kernel. I also regression tested on armhf, but only in
> QEMU, as I'm unaware of any actual ARMv7 hardware supported by the
> generic kernel with PCI.
> 
> The following changes since commit 001d68ae41c16fb4e9e27ed05a42fe15c8e1862d:
> 
>   UBUNTU: Ubuntu-4.4.0-138.164 (2018-10-02 14:39:37 +0000)
> 
> are available in the Git repository at:
> 
>   git://git.launchpad.net/~dannf/ubuntu/+source/linux/+git/linux xenial-arm64-acpi-pci
> 
> for you to fetch changes up to 6ea689f10635098db409b1f1af9d08df9d9743e1:
> 
>   ARM64: PCI: Support ACPI-based PCI host controller (2018-10-29 12:03:40 -0600)
> 
> ----------------------------------------------------------------
> Jayachandran C (5):
>       PCI: Provide common functions for ECAM mapping
>       PCI: generic, thunder: Use generic ECAM API
>       PCI: Move ecam.h to linux/include/pci-ecam.h
>       PCI: Add parent device field to ECAM struct pci_config_window
>       PCI/ACPI: Support I/O resources when parsing host bridge resources
> 
> Sinan Kaya (1):
>       PCI: Add pci_unmap_iospace() to unmap I/O resources
> 
> Tomasz Nowicki (7):
>       PCI, of: Move PCI I/O space management to PCI core code
>       PCI/ACPI: Add generic MCFG table handling
>       PCI: Refactor pci_bus_assign_domain_nr() for CONFIG_PCI_DOMAINS_GENERIC
>       PCI: Factor DT-specific pci_bus_find_domain_nr() code out
>       ARM64: PCI: Add acpi_pci_bus_find_domain_nr()
>       ARM64: PCI: ACPI support for legacy IRQs parsing and consolidation with DT code
>       ARM64: PCI: Support ACPI-based PCI host controller
> 
> dann frazier (2):
>       UBUNTU: [Config] CONFIG_PCI_ECAM=y
>       UBUNTU: [Config] CONFIG_ACPI_MCFG=y
> 
>  arch/arm64/Kconfig                        |   2 +
>  arch/arm64/kernel/pci.c                   | 134 ++++++++++++++++++++++--
>  debian.master/config/config.common.ubuntu |   2 +
>  drivers/acpi/Kconfig                      |   3 +
>  drivers/acpi/Makefile                     |   1 +
>  drivers/acpi/pci_mcfg.c                   |  92 +++++++++++++++++
>  drivers/acpi/pci_root.c                   |  35 +++++++
>  drivers/of/address.c                      | 116 +--------------------
>  drivers/pci/Kconfig                       |   3 +
>  drivers/pci/Makefile                      |   2 +
>  drivers/pci/ecam.c                        | 164 ++++++++++++++++++++++++++++++
>  drivers/pci/host/Kconfig                  |   1 +
>  drivers/pci/host/pci-host-common.c        | 115 +++++++++------------
>  drivers/pci/host/pci-host-common.h        |  56 ----------
>  drivers/pci/host/pci-host-generic.c       |  53 ++--------
>  drivers/pci/host/pci-thunder-ecam.c       |  40 ++------
>  drivers/pci/host/pci-thunder-pem.c        |  94 ++++++++---------
>  drivers/pci/pci.c                         | 144 +++++++++++++++++++++++++-
>  drivers/pci/probe.c                       |   4 +-
>  include/linux/of_address.h                |   9 --
>  include/linux/pci-acpi.h                  |   2 +
>  include/linux/pci-ecam.h                  |  67 ++++++++++++
>  include/linux/pci.h                       |  19 ++--
>  23 files changed, 769 insertions(+), 389 deletions(-)
>  create mode 100644 drivers/acpi/pci_mcfg.c
>  create mode 100644 drivers/pci/ecam.c
>  delete mode 100644 drivers/pci/host/pci-host-common.h
>  create mode 100644 include/linux/pci-ecam.h
> 
Ok, this is huge, ugly and just looking at the file locations this rather looks
scary and it feels wrong that one has to change an old release that much in
order of getting it to boot in a more recent VM environment.

Looking at the details at least there is hope that effects are more limited to
open formware platforms. Though it would probably have been better if there also
was some ppc regression testing. And I hear that there would be good reasons to
want to move that way. But frankly I rather don't want things like this be
needed. For now

Acked-by: Stefan Bader <stefan.bader at canonical.com>

but being prepared to take it out again when problems appear. At least it seems
to compile for all arches still.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20181108/dd30af95/attachment-0001.sig>


More information about the kernel-team mailing list