NACK: [SRU][PATCH v2][F/oracle][PULL] arm64 support (LP: #1925421)

Khaled Elmously khalid.elmously at canonical.com
Fri Apr 30 09:56:42 UTC 2021


On 2021-04-30 09:16:58 , Juerg Haefliger wrote:
> There are still a couple of issues:
> 
> 1) As Kamal mentioned:
> "UBUNTU: [config]" -> "UBUNTU: [Config] oracle:"
> "UBUNTU: [packaging]" -> "UBUNTU: [Packaging] oracle:"
> 

Done in v3

> 2) I was hoping that you tidy up arm64.mk while making modifications. I guess I
> need to spell it out ;-) Please fix the vertical alignment and the option order
> to match amd64.mk so that the two can be easily diffed. While at it, change
> header_arch to $(build_arch). Do they really need vbox?

Done.
re vbox: if it exists in arm64 and is used in the amd64 version, then yes.

> 
> 3) Both of the following add ignore files to the abi but to different versions.
> Huh?
> UBUNTU: [packaging] ignore prior arm64 abi
> UBUNTU: [config] Bring-up for arm64 support
> You should only add ignore files with the very last commit. And probably not to
> a not-yet exiting ABI version.

I was hoping to just make it easier for whoever was going to crank the kernel later, since they can just rebase that commit.
I removed it in v3.

> 
> 4) The series is not bisectable. Ideally genconfigs should succeed at every
> commit so that we can bisect if necessary. But you have config and annotation
> changes sprinkled throughout. IMO you should have a single first commit that
> contains all arm64 debian files (including the config and annotation changes).
> genconfigs needs to succeed here. Then you add all the functional patches, and
> then you rerun genconfigs and fixup the configs and annotations. Yes, that also
> doesn't make it bisectable but it's much cleaner and easier to fixup should we
> need to bisect. So squash all config and annotations commits that are not due
> to new functional patches into the enablement (first) commit.

Done in v3, thanks.

> 
> 5) Why are you adding the CMN-600 driver but not enable it?

Enabled as a module now in v3, thanks.


> 
> 6) There is quite some config options reshuffling going on. Have you checked
> that the amd64 config doesn't change? Also, still not sure about the settings
> of the new configs. VIRTIO_IOMMU disabled? I guess we can always turn things on
> later if we have to.

Yes. I checked a random sample of 10-15 configs and ensured that they remained the same. This is due to the "unsplitting" of the configs.


> 
> 7) There's still 'cherry-picked from' instead of 'cherry picked from'.

Fixed in v3, thanks.

> 
> 8) There are cherry picks with notes about required changes. What is it? cherry
> picked or backported?

backported. They have been rectified in v3. Thanks.

> 
> 9) For non-upstream commits the convention is:
> (cherry picked from <sha1> <origin>), i.e.,:
> (cherry picked from c015bb2eebcb97a2dfbf656f63449807e469e342 github.com/AmpereComputing/ampere-centos-kernel)

Updated to use the convention in v3, thanks.

> 
> 10) Extra space at the end:
> (cherry picked from https://github.com/AmpereComputing/ampere-centos-kernel/commit/1164351241b52b3c8ffab4e29de5f93a9abe4acf )

Fixed in v3 (using new convention now).  Thanks

> 
> ...Juerg
> 
> 
> On Wed, 28 Apr 2021 05:53:32 -0400
> Khaled Elmously <khalid.elmously at canonical.com> wrote:
> 
> > The following changes since commit aea1f691e9550b653072cf0931afeafebd4fab67:
> > 
> >   UBUNTU: Ubuntu-oracle-5.4.0-1044.47 (2021-04-19 11:18:25 -0600)
> > 
> > are available in the Git repository at:
> > 
> >   git+ssh://git.launchpad.net/~kmously/ubuntu/+source/linux/+git/focal tags/oracle-arm-16
> > 
> > for you to fetch changes up to 624445b8db5a26232b4f648cc7ed1ad290b7fa97:
> > 
> >   UBUNTU: [packaging] ignore prior arm64 abi (2021-04-28 05:46:48 -0400)
> > 
> > ----------------------------------------------------------------
> > Baoquan He (3):
> >       mm: memmap_init: iterate over memblock regions rather that check each PFN
> >       mm: rename memmap_init() and memmap_init_zone()
> >       mm: simplify parater of function memmap_init_zone()
> > 
> > David Hildenbrand (2):
> >       mm/page_alloc.c: initialize memmap of unavailable memory directly
> >       mm: pass migratetype into memmap_init_zone() and move_pfn_range_to_zone()
> > 
> > James Morse (2):
> >       mm/memory-failure: Add memory_failure_queue_kick()
> >       ACPI: APEI: Kick the memory_failure() queue for synchronous errors
> > 
> > Khalid Elmously (8):
> >       UBUNTU: [config] Bring-up for arm64 support
> >       UBUNTU: [config] Update configs and annotations after arm64 bring-up
> >       UBUNTU: [config] adding amba pl011 config
> >       UBUNTU: [config] update configs
> >       UBUNTU: [config] update configs
> >       UBUNTU: [config] enable CONFIG_KVM
> >       UBUNTU: [config] update annotations
> >       UBUNTU: [packaging] ignore prior arm64 abi
> > 
> > Mike Rapoport (22):
> >       mm: memblock: replace dereferences of memblock_region.nid with API calls
> >       mm: make early_pfn_to_nid() and related defintions close to each other
> >       mm: remove CONFIG_HAVE_MEMBLOCK_NODE_MAP option
> >       mm: free_area_init: use maximal zone PFNs rather than zone sizes
> >       mm: use free_area_init() instead of free_area_init_nodes()
> >       alpha: simplify detection of memory zone boundaries
> >       arm: simplify detection of memory zone boundaries
> >       arm64: simplify detection of memory zone boundaries for UMA configs
> >       csky: simplify detection of memory zone boundaries
> >       m68k: mm: simplify detection of memory zone boundaries
> >       parisc: simplify detection of memory zone boundaries
> >       sparc32: simplify detection of memory zone boundaries
> >       unicore32: simplify detection of memory zone boundaries
> >       xtensa: simplify detection of memory zone boundaries
> >       mm/page_alloc.c: refactor initialization of struct page for holes in memory layout
> >       mm: remove early_pfn_in_nid() and CONFIG_NODES_SPAN_OTHER_NODES
> >       mm: free_area_init: allow defining max_zone_pfn in descending order
> >       arc: fix memory initialization for systems with two memory banks
> >       mm: rename free_area_init_node() to free_area_init_memoryless_node()
> >       mm: clean up free_area_init_node() and its helpers
> >       mm: simplify find_min_pfn_with_active_regions()
> >       docs/vm: update memory-models documentation
> > 
> > Robin Murphy (4):
> >       perf: Add Arm CMN-600 PMU driver
> >       perf: Add Arm CMN-600 DT binding
> >       perf/arm-cmn: Fix PMU instance naming
> >       perf/arm-cmn: Move IRQs when migrating context
> > 
> > Tuan Phan (7):
> >       UBUNTU: SAUCE: perf/smmuv3: Allow sharing MMIO registers with the SMMU driver
> >       UBUNTU: SAUCE: arm64: Split the old READ_IMPLIES_EXEC workaround from executable
> >       PCI/ACPI: Add Ampere Altra SOC MCFG quirk
> >       driver/perf: Add PMU driver for the ARM DMC-620 memory controller
> >       perf: arm_dsu: Support DSU ACPI devices
> >       UBUNTU: SAUCE: perf: arm_dsu: Allow IRQ to be shared among devices.
> >       Perf: arm-cmn: Allow irq to be shared.
> > 
> > Vanshidhar Konda (1):
> >       arm64: NUMA: Kconfig: Increase NODES_SHIFT to 4
> > 
> > Wei Yongjun (1):
> >       perf/arm_dmc620_pmu: Fix error return code in dmc620_pmu_device_probe()
> > 
> > Will Deacon (1):
> >       perf: arm-cmn: Fix unsigned comparison to less than zero
> > 
> > lho (1):
> >       UBUNTU: SAUCE: hwmon: Add Ampere Altra HW monitor driver
> > 
> >  Documentation/admin-guide/perf/arm-cmn.rst         |   65 +
> >  Documentation/admin-guide/perf/index.rst           |    1 +
> >  .../devicetree/bindings/perf/arm,cmn.yaml          |   57 +
> >  .../features/vm/numa-memblock/arch-support.txt     |   34 -
> >  Documentation/vm/memory-model.rst                  |    9 +-
> >  arch/alpha/mm/init.c                               |   16 +-
> >  arch/alpha/mm/numa.c                               |   22 +-
> >  arch/arc/mm/init.c                                 |   66 +-
> >  arch/arm/kernel/elf.c                              |   27 +-
> >  arch/arm/mm/init.c                                 |   66 +-
> >  arch/arm64/Kconfig                                 |    3 +-
> >  arch/arm64/include/asm/elf.h                       |   23 +-
> >  arch/arm64/mm/init.c                               |   48 +-
> >  arch/arm64/mm/numa.c                               |    9 +-
> >  arch/c6x/mm/init.c                                 |    8 +-
> >  arch/csky/kernel/setup.c                           |   26 +-
> >  arch/h8300/mm/init.c                               |    6 +-
> >  arch/hexagon/mm/init.c                             |    6 +-
> >  arch/ia64/Kconfig                                  |    1 -
> >  arch/ia64/mm/contig.c                              |    2 +-
> >  arch/ia64/mm/discontig.c                           |    2 +-
> >  arch/ia64/mm/init.c                                |    4 +-
> >  arch/m68k/mm/init.c                                |    6 +-
> >  arch/m68k/mm/mcfmmu.c                              |    9 +-
> >  arch/m68k/mm/motorola.c                            |   15 +-
> >  arch/m68k/mm/sun3mmu.c                             |   10 +-
> >  arch/microblaze/Kconfig                            |    1 -
> >  arch/microblaze/mm/init.c                          |    2 +-
> >  arch/mips/Kconfig                                  |    1 -
> >  arch/mips/mm/init.c                                |    2 +-
> >  arch/mips/sgi-ip27/ip27-memory.c                   |    2 +-
> >  arch/nds32/mm/init.c                               |   11 +-
> >  arch/nios2/mm/init.c                               |    8 +-
> >  arch/openrisc/mm/init.c                            |    9 +-
> >  arch/parisc/mm/init.c                              |   22 +-
> >  arch/powerpc/Kconfig                               |   10 -
> >  arch/powerpc/mm/mem.c                              |    2 +-
> >  arch/riscv/Kconfig                                 |    1 -
> >  arch/riscv/mm/init.c                               |    2 +-
> >  arch/s390/Kconfig                                  |    1 -
> >  arch/s390/mm/init.c                                |    2 +-
> >  arch/sh/Kconfig                                    |    1 -
> >  arch/sh/mm/init.c                                  |    2 +-
> >  arch/sparc/Kconfig                                 |   10 -
> >  arch/sparc/mm/init_64.c                            |    2 +-
> >  arch/sparc/mm/srmmu.c                              |   21 +-
> >  arch/um/kernel/mem.c                               |   12 +-
> >  arch/unicore32/include/asm/memory.h                |    2 +-
> >  arch/unicore32/include/mach/memory.h               |    6 +-
> >  arch/unicore32/kernel/pci.c                        |   14 +-
> >  arch/unicore32/mm/init.c                           |   43 +-
> >  arch/x86/Kconfig                                   |   10 -
> >  arch/x86/include/asm/elf.h                         |   22 +-
> >  arch/x86/mm/init.c                                 |    2 +-
> >  arch/x86/mm/numa.c                                 |   11 +-
> >  arch/xtensa/mm/init.c                              |    8 +-
> >  debian.oracle/abi/5.4.0-1039.42/arm64/ignore       |    0
> >  .../abi/5.4.0-1039.42/arm64/ignore.modules         |    0
> >  .../abi/5.4.0-1039.42/arm64/ignore.retpoline       |    0
> >  debian.oracle/abi/5.4.0-1043.46/arm64/ignore       |    1 +
> >  .../abi/5.4.0-1043.46/arm64/ignore.compiler        |    1 +
> >  .../abi/5.4.0-1043.46/arm64/ignore.modules         |    1 +
> >  .../abi/5.4.0-1043.46/arm64/ignore.retpoline       |    1 +
> >  debian.oracle/abi/5.4.0-1044.47/arm64/ignore       |    1 +
> >  .../abi/5.4.0-1044.47/arm64/ignore.compiler        |    1 +
> >  .../abi/5.4.0-1044.47/arm64/ignore.modules         |    1 +
> >  .../abi/5.4.0-1044.47/arm64/ignore.retpoline       |    1 +
> >  debian.oracle/config/amd64/config.common.amd64     |   24 +
> >  debian.oracle/config/annotations                   |   22 +-
> >  debian.oracle/config/arm64/config.common.arm64     |   27 +
> >  debian.oracle/config/arm64/config.flavour.oracle   |    3 +
> >  debian.oracle/config/config.common.ubuntu          |  660 +++++++-
> >  debian.oracle/control.d/vars.oracle                |    4 +-
> >  debian.oracle/control.stub.in                      |    2 +-
> >  debian.oracle/etc/kernelconfig                     |    2 +-
> >  debian.oracle/rules.d/arm64.mk                     |   30 +
> >  drivers/acpi/apei/ghes.c                           |   67 +-
> >  drivers/acpi/pci_mcfg.c                            |   20 +
> >  drivers/hwmon/Kconfig                              |   10 +
> >  drivers/hwmon/Makefile                             |    1 +
> >  drivers/hwmon/altra-hwmon.c                        |  435 ++++++
> >  drivers/iommu/arm-smmu-v3.c                        |    2 +-
> >  drivers/pci/ecam.c                                 |   10 +
> >  drivers/perf/Kconfig                               |   14 +
> >  drivers/perf/Makefile                              |    2 +
> >  drivers/perf/arm-cmn.c                             | 1638 ++++++++++++++++++++
> >  drivers/perf/arm_dmc620_pmu.c                      |  749 +++++++++
> >  drivers/perf/arm_dsu_pmu.c                         |   65 +-
> >  drivers/perf/arm_smmuv3_pmu.c                      |   25 +-
> >  fs/compat_binfmt_elf.c                             |    5 +
> >  include/acpi/ghes.h                                |    3 +
> >  include/linux/memblock.h                           |    8 +-
> >  include/linux/memory_hotplug.h                     |    3 +-
> >  include/linux/mm.h                                 |   44 +-
> >  include/linux/mmzone.h                             |   11 +-
> >  include/linux/pci-ecam.h                           |    1 +
> >  mm/Kconfig                                         |    3 -
> >  mm/compaction.c                                    |    4 +-
> >  mm/memblock.c                                      |   19 +-
> >  mm/memory-failure.c                                |   15 +-
> >  mm/memory_hotplug.c                                |   17 +-
> >  mm/memremap.c                                      |    3 +-
> >  mm/page_alloc.c                                    |  420 +++--
> >  103 files changed, 4347 insertions(+), 812 deletions(-)
> >  create mode 100644 Documentation/admin-guide/perf/arm-cmn.rst
> >  create mode 100644 Documentation/devicetree/bindings/perf/arm,cmn.yaml
> >  delete mode 100644 Documentation/features/vm/numa-memblock/arch-support.txt
> >  create mode 100644 debian.oracle/abi/5.4.0-1039.42/arm64/ignore
> >  create mode 100644 debian.oracle/abi/5.4.0-1039.42/arm64/ignore.modules
> >  create mode 100644 debian.oracle/abi/5.4.0-1039.42/arm64/ignore.retpoline
> >  create mode 100644 debian.oracle/abi/5.4.0-1043.46/arm64/ignore
> >  create mode 100644 debian.oracle/abi/5.4.0-1043.46/arm64/ignore.compiler
> >  create mode 100644 debian.oracle/abi/5.4.0-1043.46/arm64/ignore.modules
> >  create mode 100644 debian.oracle/abi/5.4.0-1043.46/arm64/ignore.retpoline
> >  create mode 100644 debian.oracle/abi/5.4.0-1044.47/arm64/ignore
> >  create mode 100644 debian.oracle/abi/5.4.0-1044.47/arm64/ignore.compiler
> >  create mode 100644 debian.oracle/abi/5.4.0-1044.47/arm64/ignore.modules
> >  create mode 100644 debian.oracle/abi/5.4.0-1044.47/arm64/ignore.retpoline
> >  create mode 100644 debian.oracle/config/arm64/config.common.arm64
> >  create mode 100644 debian.oracle/config/arm64/config.flavour.oracle
> >  create mode 100644 debian.oracle/rules.d/arm64.mk
> >  create mode 100644 drivers/hwmon/altra-hwmon.c
> >  create mode 100644 drivers/perf/arm-cmn.c
> >  create mode 100644 drivers/perf/arm_dmc620_pmu.c
> > 
> > 
> 





More information about the kernel-team mailing list