All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ganapatrao Kulkarni <gkulkarni@caviumnetworks.com>
To: linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org,
	linux-ia64@vger.kernel.org, linux-metag@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org, linux-s390@vger.kernel.org,
	linux-sh@vger.kernel.org, linux-arch@vger.kernel.org,
	Will.Deacon@arm.com, catalin.marinas@arm.com, robh+dt@kernel.org,
	mark.rutland@arm.com, grant.likely@linaro.org,
	leif.lindholm@linaro.org, rfranz@cavium.com,
	ard.biesheuvel@linaro.org, msalter@redhat.com,
	steve.capper@linaro.org, hanjun.guo@linaro.org,
	al.stone@linaro.org, arnd@arndb.de, pawel.moll@arm.com,
	ijc+devicetree@hellion.org.uk, galak@codeaurora.org,
	rjw@rjwysocki.net, lenb@kernel.org, marc.zyngier@arm.com,
	lorenzo.pieralisi@arm.com, bhelgaas@google.com,
	tony.luck@intel.com, fenghua.yu@intel.com, james.hog
Cc: gpkulkarni@gmail.com
Subject: [PATCH v10 0/8] arm64, numa: Add numa support for arm64 platforms
Date: Tue, 02 Feb 2016 10:21:15 +0000	[thread overview]
Message-ID: <1454407763-1017-1-git-send-email-gkulkarni@caviumnetworks.com> (raw)

v10:
	- Incorporated review comments from Rob Herring.
	- Moved numa binding and implementation to devicetree core.
	- Added cleanup patch to remove redundant NODE_DATA macro from asm header files
	- Include numa balancing support for arm64 patch in this series.
	- Fix tile build issue reported by the kbuild robot(patch 7)

v9:	- Added cleanup patch to reuse and avoid redefinition of cpumask_of_pcibus
	  as suggested from Will Deacon and Bjorn Helgaas.
	- Including patch to Make pci-host-generic driver numa aware.
	- Incorporated comment from Shannon Zhao.

v8:
	- Incorporated review comments of Mark Rutland and Will Deacon.
	- Added pci helper function and macro for numa.

v7:
	- managing numa memory mapping using memblock.
	- Incorporated review comments of Mark Rutland.

v6:
	- defined and implemented the numa dt binding using
	node property proximity and device node distance-map.
	- renamed dt_numa to of_numa

v5:
        - created base verion of numa.c which creates dummy numa without using dt
          on single socket platforms. Then added patches for dt support.
        - Incorporated review comments from Hanjun Guo.

v4:
done changes as per Arnd review comments.

v3:
Added changes to support numa on arm64 based platforms.
Tested these patches on cavium's multinode(2 node topology) platform.
In this patchset, defined and implemented dt bindings for numa mapping
for core and memory using device node property arm,associativity.

v2:
Defined and implemented numa map for memory, cores to node and
proximity distance matrix of nodes.

v1:
Initial patchset to support numa on arm64 platforms.

Note:
        1. This patchset is tested for numa with dt on
           thunderx single socket and dual socket boards.
        2. Numa DT booting needs the dt memory nodes, which are deleted in current efi-stub,
        hence to try numa with dt, you need to rebase with ard's patchset.
        http://git.linaro.org/people/ard.biesheuvel/linux-arm.git/shortlog/refs/heads/arm64-uefi-early-fdt-handling
	3. PATCH[7,8] are not tested for other architectures.

Ganapatrao Kulkarni (8):
  arm64, numa: adding numa support for arm64 platforms.
  Documentation, dt, numa: dt bindings for numa.
  dt, numa: adding numa dt binding implementation.
  arm64, numa : Enable numa dt for arm64 platforms.
  arm64, dt, thunderx: Add initial dts for Cavium Thunderx in 2 node
    topology.
  arm64, mm, numa: Adding numa balancing support for arm64.
  topology, cleanup: Avoid redefinition of cpumask_of_pcibus in asm
    header files.
  numa, mm, cleanup: remove redundant NODE_DATA macro from asm header
    files.

 Documentation/devicetree/bindings/numa.txt      | 272 ++++++++
 arch/arm64/Kconfig                              |  26 +
 arch/arm64/boot/dts/cavium/Makefile             |   2 +-
 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dts  |  83 +++
 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dtsi | 806 ++++++++++++++++++++++++
 arch/arm64/include/asm/mmzone.h                 |  10 +
 arch/arm64/include/asm/numa.h                   |  45 ++
 arch/arm64/include/asm/pgtable.h                |  18 +
 arch/arm64/include/asm/topology.h               |   7 +
 arch/arm64/kernel/pci.c                         |  10 +
 arch/arm64/kernel/setup.c                       |   4 +
 arch/arm64/kernel/smp.c                         |   4 +
 arch/arm64/mm/Makefile                          |   1 +
 arch/arm64/mm/init.c                            |  34 +-
 arch/arm64/mm/mmu.c                             |   1 +
 arch/arm64/mm/numa.c                            | 404 ++++++++++++
 arch/ia64/include/asm/topology.h                |   4 -
 arch/m32r/include/asm/mmzone.h                  |   4 +-
 arch/metag/include/asm/mmzone.h                 |   4 +-
 arch/metag/include/asm/topology.h               |   3 -
 arch/powerpc/include/asm/mmzone.h               |   8 +-
 arch/powerpc/include/asm/topology.h             |   4 -
 arch/s390/include/asm/mmzone.h                  |   6 +-
 arch/s390/include/asm/pci.h                     |   2 +-
 arch/s390/include/asm/topology.h                |   1 +
 arch/sh/include/asm/mmzone.h                    |   4 +-
 arch/sh/include/asm/topology.h                  |   3 -
 arch/sparc/include/asm/mmzone.h                 |   6 +-
 arch/tile/include/asm/pci.h                     |   2 -
 arch/tile/include/asm/topology.h                |   3 +
 arch/x86/include/asm/mmzone.h                   |   3 +-
 arch/x86/include/asm/mmzone_32.h                |   5 -
 arch/x86/include/asm/mmzone_64.h                |  17 -
 arch/x86/include/asm/pci.h                      |   2 +-
 arch/x86/include/asm/topology.h                 |   1 +
 drivers/of/Kconfig                              |  11 +
 drivers/of/Makefile                             |   1 +
 drivers/of/of_numa.c                            | 207 ++++++
 include/asm-generic/mmzone.h                    |  24 +
 include/asm-generic/topology.h                  |   4 +-
 include/linux/of.h                              |   4 +
 41 files changed, 1986 insertions(+), 74 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/numa.txt
 create mode 100644 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dts
 create mode 100644 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dtsi
 create mode 100644 arch/arm64/include/asm/mmzone.h
 create mode 100644 arch/arm64/include/asm/numa.h
 create mode 100644 arch/arm64/mm/numa.c
 delete mode 100644 arch/x86/include/asm/mmzone_64.h
 create mode 100644 drivers/of/of_numa.c
 create mode 100644 include/asm-generic/mmzone.h

-- 
1.8.1.4


WARNING: multiple messages have this Message-ID (diff)
From: Ganapatrao Kulkarni <gkulkarni@caviumnetworks.com>
To: <linux-arm-kernel@lists.infradead.org>,
	<devicetree@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	<linux-pci@vger.kernel.org>, <linux-ia64@vger.kernel.org>,
	<linux-metag@vger.kernel.org>, <linuxppc-dev@lists.ozlabs.org>,
	<linux-s390@vger.kernel.org>, <linux-sh@vger.kernel.org>,
	<linux-arch@vger.kernel.org>, <Will.Deacon@arm.com>,
	<catalin.marinas@arm.com>, <robh+dt@kernel.org>,
	<mark.rutland@arm.com>, <grant.likely@linaro.org>,
	<leif.lindholm@linaro.org>, <rfranz@cavium.com>,
	<ard.biesheuvel@linaro.org>, <msalter@redhat.com>,
	<steve.capper@linaro.org>, <hanjun.guo@linaro.org>,
	<al.stone@linaro.org>, <arnd@arndb.de>, <pawel.moll@arm.com>,
	<ijc+devicetree@hellion.org.uk>, <galak@codeaurora.org>,
	<rjw@rjwysocki.net>, <lenb@kernel.org>, <marc.zyngier@arm.com>,
	<lorenzo.pieralisi@arm.com>, <bhelgaas@google.com>,
	<tony.luck@intel.com>, <fenghua.yu@intel.com>,
	<james.hogan@imgtec.com>, <benh@kernel.crashing.org>,
	<tglx@linutronix.de>, <mingo@redhat.com>, <hpa@zytor.com>,
	<x86@kernel.org>, <jonathan@jonmasters.org>,
	<rrichter@cavium.com>, <Prasun.Kapoor@caviumnetworks.com>
Cc: <gpkulkarni@gmail.com>
Subject: [PATCH v10 0/8] arm64, numa: Add numa support for arm64 platforms
Date: Tue, 2 Feb 2016 15:39:15 +0530	[thread overview]
Message-ID: <1454407763-1017-1-git-send-email-gkulkarni@caviumnetworks.com> (raw)

v10:
	- Incorporated review comments from Rob Herring.
	- Moved numa binding and implementation to devicetree core.
	- Added cleanup patch to remove redundant NODE_DATA macro from asm header files
	- Include numa balancing support for arm64 patch in this series.
	- Fix tile build issue reported by the kbuild robot(patch 7)

v9:	- Added cleanup patch to reuse and avoid redefinition of cpumask_of_pcibus
	  as suggested from Will Deacon and Bjorn Helgaas.
	- Including patch to Make pci-host-generic driver numa aware.
	- Incorporated comment from Shannon Zhao.

v8:
	- Incorporated review comments of Mark Rutland and Will Deacon.
	- Added pci helper function and macro for numa.

v7:
	- managing numa memory mapping using memblock.
	- Incorporated review comments of Mark Rutland.

v6:
	- defined and implemented the numa dt binding using
	node property proximity and device node distance-map.
	- renamed dt_numa to of_numa

v5:
        - created base verion of numa.c which creates dummy numa without using dt
          on single socket platforms. Then added patches for dt support.
        - Incorporated review comments from Hanjun Guo.

v4:
done changes as per Arnd review comments.

v3:
Added changes to support numa on arm64 based platforms.
Tested these patches on cavium's multinode(2 node topology) platform.
In this patchset, defined and implemented dt bindings for numa mapping
for core and memory using device node property arm,associativity.

v2:
Defined and implemented numa map for memory, cores to node and
proximity distance matrix of nodes.

v1:
Initial patchset to support numa on arm64 platforms.

Note:
        1. This patchset is tested for numa with dt on
           thunderx single socket and dual socket boards.
        2. Numa DT booting needs the dt memory nodes, which are deleted in current efi-stub,
        hence to try numa with dt, you need to rebase with ard's patchset.
        http://git.linaro.org/people/ard.biesheuvel/linux-arm.git/shortlog/refs/heads/arm64-uefi-early-fdt-handling
	3. PATCH[7,8] are not tested for other architectures.

Ganapatrao Kulkarni (8):
  arm64, numa: adding numa support for arm64 platforms.
  Documentation, dt, numa: dt bindings for numa.
  dt, numa: adding numa dt binding implementation.
  arm64, numa : Enable numa dt for arm64 platforms.
  arm64, dt, thunderx: Add initial dts for Cavium Thunderx in 2 node
    topology.
  arm64, mm, numa: Adding numa balancing support for arm64.
  topology, cleanup: Avoid redefinition of cpumask_of_pcibus in asm
    header files.
  numa, mm, cleanup: remove redundant NODE_DATA macro from asm header
    files.

 Documentation/devicetree/bindings/numa.txt      | 272 ++++++++
 arch/arm64/Kconfig                              |  26 +
 arch/arm64/boot/dts/cavium/Makefile             |   2 +-
 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dts  |  83 +++
 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dtsi | 806 ++++++++++++++++++++++++
 arch/arm64/include/asm/mmzone.h                 |  10 +
 arch/arm64/include/asm/numa.h                   |  45 ++
 arch/arm64/include/asm/pgtable.h                |  18 +
 arch/arm64/include/asm/topology.h               |   7 +
 arch/arm64/kernel/pci.c                         |  10 +
 arch/arm64/kernel/setup.c                       |   4 +
 arch/arm64/kernel/smp.c                         |   4 +
 arch/arm64/mm/Makefile                          |   1 +
 arch/arm64/mm/init.c                            |  34 +-
 arch/arm64/mm/mmu.c                             |   1 +
 arch/arm64/mm/numa.c                            | 404 ++++++++++++
 arch/ia64/include/asm/topology.h                |   4 -
 arch/m32r/include/asm/mmzone.h                  |   4 +-
 arch/metag/include/asm/mmzone.h                 |   4 +-
 arch/metag/include/asm/topology.h               |   3 -
 arch/powerpc/include/asm/mmzone.h               |   8 +-
 arch/powerpc/include/asm/topology.h             |   4 -
 arch/s390/include/asm/mmzone.h                  |   6 +-
 arch/s390/include/asm/pci.h                     |   2 +-
 arch/s390/include/asm/topology.h                |   1 +
 arch/sh/include/asm/mmzone.h                    |   4 +-
 arch/sh/include/asm/topology.h                  |   3 -
 arch/sparc/include/asm/mmzone.h                 |   6 +-
 arch/tile/include/asm/pci.h                     |   2 -
 arch/tile/include/asm/topology.h                |   3 +
 arch/x86/include/asm/mmzone.h                   |   3 +-
 arch/x86/include/asm/mmzone_32.h                |   5 -
 arch/x86/include/asm/mmzone_64.h                |  17 -
 arch/x86/include/asm/pci.h                      |   2 +-
 arch/x86/include/asm/topology.h                 |   1 +
 drivers/of/Kconfig                              |  11 +
 drivers/of/Makefile                             |   1 +
 drivers/of/of_numa.c                            | 207 ++++++
 include/asm-generic/mmzone.h                    |  24 +
 include/asm-generic/topology.h                  |   4 +-
 include/linux/of.h                              |   4 +
 41 files changed, 1986 insertions(+), 74 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/numa.txt
 create mode 100644 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dts
 create mode 100644 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dtsi
 create mode 100644 arch/arm64/include/asm/mmzone.h
 create mode 100644 arch/arm64/include/asm/numa.h
 create mode 100644 arch/arm64/mm/numa.c
 delete mode 100644 arch/x86/include/asm/mmzone_64.h
 create mode 100644 drivers/of/of_numa.c
 create mode 100644 include/asm-generic/mmzone.h

-- 
1.8.1.4

WARNING: multiple messages have this Message-ID (diff)
From: Ganapatrao Kulkarni <gkulkarni@caviumnetworks.com>
To: linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org,
	linux-ia64@vger.kernel.org, linux-metag@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org, linux-s390@vger.kernel.org,
	linux-sh@vger.kernel.org, linux-arch@vger.kernel.org,
	Will.Deacon@arm.com, catalin.marinas@arm.com, robh+dt@kernel.org,
	mark.rutland@arm.com, grant.likely@linaro.org,
	leif.lindholm@linaro.org, rfranz@cavium.com,
	ard.biesheuvel@linaro.org, msalter@redhat.com,
	steve.capper@linaro.org, hanjun.guo@linaro.org,
	al.stone@linaro.org, arnd@arndb.de, pawel.moll@arm.com,
	ijc+devicetree@hellion.org.uk, galak@codeaurora.org,
	rjw@rjwysocki.net, lenb@kernel.org, marc.zyngier@arm.com,
	lorenzo.pieralisi@arm.com, bhelgaas@google.com,
	tony.luck@intel.com, fenghua.yu@intel.com,
	james.hogan@imgtec.com, benh@kernel.crashing.org,
	tglx@linutronix.de, mingo@redhat.com, hpa@zytor.com,
	x86@kernel.org, jonathan@jonmasters.org, rrichter@cavium.com,
	Prasun.Kapoor@caviumnetworks.com
Cc: gpkulkarni@gmail.com
Subject: [PATCH v10 0/8] arm64, numa: Add numa support for arm64 platforms
Date: Tue, 2 Feb 2016 15:39:15 +0530	[thread overview]
Message-ID: <1454407763-1017-1-git-send-email-gkulkarni@caviumnetworks.com> (raw)
Message-ID: <20160202100915.IanVfyqD1k1Hj9-o85XaLi6PDH4n3B5TWnp63cjOJ34@z> (raw)

v10:
	- Incorporated review comments from Rob Herring.
	- Moved numa binding and implementation to devicetree core.
	- Added cleanup patch to remove redundant NODE_DATA macro from asm header files
	- Include numa balancing support for arm64 patch in this series.
	- Fix tile build issue reported by the kbuild robot(patch 7)

v9:	- Added cleanup patch to reuse and avoid redefinition of cpumask_of_pcibus
	  as suggested from Will Deacon and Bjorn Helgaas.
	- Including patch to Make pci-host-generic driver numa aware.
	- Incorporated comment from Shannon Zhao.

v8:
	- Incorporated review comments of Mark Rutland and Will Deacon.
	- Added pci helper function and macro for numa.

v7:
	- managing numa memory mapping using memblock.
	- Incorporated review comments of Mark Rutland.

v6:
	- defined and implemented the numa dt binding using
	node property proximity and device node distance-map.
	- renamed dt_numa to of_numa

v5:
        - created base verion of numa.c which creates dummy numa without using dt
          on single socket platforms. Then added patches for dt support.
        - Incorporated review comments from Hanjun Guo.

v4:
done changes as per Arnd review comments.

v3:
Added changes to support numa on arm64 based platforms.
Tested these patches on cavium's multinode(2 node topology) platform.
In this patchset, defined and implemented dt bindings for numa mapping
for core and memory using device node property arm,associativity.

v2:
Defined and implemented numa map for memory, cores to node and
proximity distance matrix of nodes.

v1:
Initial patchset to support numa on arm64 platforms.

Note:
        1. This patchset is tested for numa with dt on
           thunderx single socket and dual socket boards.
        2. Numa DT booting needs the dt memory nodes, which are deleted in current efi-stub,
        hence to try numa with dt, you need to rebase with ard's patchset.
        http://git.linaro.org/people/ard.biesheuvel/linux-arm.git/shortlog/refs/heads/arm64-uefi-early-fdt-handling
	3. PATCH[7,8] are not tested for other architectures.

Ganapatrao Kulkarni (8):
  arm64, numa: adding numa support for arm64 platforms.
  Documentation, dt, numa: dt bindings for numa.
  dt, numa: adding numa dt binding implementation.
  arm64, numa : Enable numa dt for arm64 platforms.
  arm64, dt, thunderx: Add initial dts for Cavium Thunderx in 2 node
    topology.
  arm64, mm, numa: Adding numa balancing support for arm64.
  topology, cleanup: Avoid redefinition of cpumask_of_pcibus in asm
    header files.
  numa, mm, cleanup: remove redundant NODE_DATA macro from asm header
    files.

 Documentation/devicetree/bindings/numa.txt      | 272 ++++++++
 arch/arm64/Kconfig                              |  26 +
 arch/arm64/boot/dts/cavium/Makefile             |   2 +-
 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dts  |  83 +++
 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dtsi | 806 ++++++++++++++++++++++++
 arch/arm64/include/asm/mmzone.h                 |  10 +
 arch/arm64/include/asm/numa.h                   |  45 ++
 arch/arm64/include/asm/pgtable.h                |  18 +
 arch/arm64/include/asm/topology.h               |   7 +
 arch/arm64/kernel/pci.c                         |  10 +
 arch/arm64/kernel/setup.c                       |   4 +
 arch/arm64/kernel/smp.c                         |   4 +
 arch/arm64/mm/Makefile                          |   1 +
 arch/arm64/mm/init.c                            |  34 +-
 arch/arm64/mm/mmu.c                             |   1 +
 arch/arm64/mm/numa.c                            | 404 ++++++++++++
 arch/ia64/include/asm/topology.h                |   4 -
 arch/m32r/include/asm/mmzone.h                  |   4 +-
 arch/metag/include/asm/mmzone.h                 |   4 +-
 arch/metag/include/asm/topology.h               |   3 -
 arch/powerpc/include/asm/mmzone.h               |   8 +-
 arch/powerpc/include/asm/topology.h             |   4 -
 arch/s390/include/asm/mmzone.h                  |   6 +-
 arch/s390/include/asm/pci.h                     |   2 +-
 arch/s390/include/asm/topology.h                |   1 +
 arch/sh/include/asm/mmzone.h                    |   4 +-
 arch/sh/include/asm/topology.h                  |   3 -
 arch/sparc/include/asm/mmzone.h                 |   6 +-
 arch/tile/include/asm/pci.h                     |   2 -
 arch/tile/include/asm/topology.h                |   3 +
 arch/x86/include/asm/mmzone.h                   |   3 +-
 arch/x86/include/asm/mmzone_32.h                |   5 -
 arch/x86/include/asm/mmzone_64.h                |  17 -
 arch/x86/include/asm/pci.h                      |   2 +-
 arch/x86/include/asm/topology.h                 |   1 +
 drivers/of/Kconfig                              |  11 +
 drivers/of/Makefile                             |   1 +
 drivers/of/of_numa.c                            | 207 ++++++
 include/asm-generic/mmzone.h                    |  24 +
 include/asm-generic/topology.h                  |   4 +-
 include/linux/of.h                              |   4 +
 41 files changed, 1986 insertions(+), 74 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/numa.txt
 create mode 100644 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dts
 create mode 100644 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dtsi
 create mode 100644 arch/arm64/include/asm/mmzone.h
 create mode 100644 arch/arm64/include/asm/numa.h
 create mode 100644 arch/arm64/mm/numa.c
 delete mode 100644 arch/x86/include/asm/mmzone_64.h
 create mode 100644 drivers/of/of_numa.c
 create mode 100644 include/asm-generic/mmzone.h

-- 
1.8.1.4

WARNING: multiple messages have this Message-ID (diff)
From: Ganapatrao Kulkarni <gkulkarni@caviumnetworks.com>
To: linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org,
	linux-ia64@vger.kernel.org, linux-metag@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org, linux-s390@vger.kernel.org,
	linux-sh@vger.kernel.org, linux-arch@vger.kernel.org,
	Will.Deacon@arm.com, catalin.marinas@arm.com, robh+dt@kernel.org,
	mark.rutland@arm.com, grant.likely@linaro.org,
	leif.lindholm@linaro.org, rfranz@cavium.com,
	ard.biesheuvel@linaro.org, msalter@redhat.com,
	steve.capper@linaro.org, hanjun.guo@linaro.org,
	al.stone@linaro.org, arnd@arndb.de, pawel.moll@arm.com,
	ijc+devicetree@hellion.org.uk, galak@codeaurora.org,
	rjw@rjwysocki.net, lenb@kernel.org, marc.zyngier@arm.com,
	lorenzo.pieralisi@arm.com, bhelgaas@google.com,
	tony.luck@intel.com, fenghua.yu@intel.com, james.hog
Cc: gpkulkarni@gmail.com
Subject: [PATCH v10 0/8] arm64, numa: Add numa support for arm64 platforms
Date: Tue, 2 Feb 2016 15:39:15 +0530	[thread overview]
Message-ID: <1454407763-1017-1-git-send-email-gkulkarni@caviumnetworks.com> (raw)

v10:
	- Incorporated review comments from Rob Herring.
	- Moved numa binding and implementation to devicetree core.
	- Added cleanup patch to remove redundant NODE_DATA macro from asm header files
	- Include numa balancing support for arm64 patch in this series.
	- Fix tile build issue reported by the kbuild robot(patch 7)

v9:	- Added cleanup patch to reuse and avoid redefinition of cpumask_of_pcibus
	  as suggested from Will Deacon and Bjorn Helgaas.
	- Including patch to Make pci-host-generic driver numa aware.
	- Incorporated comment from Shannon Zhao.

v8:
	- Incorporated review comments of Mark Rutland and Will Deacon.
	- Added pci helper function and macro for numa.

v7:
	- managing numa memory mapping using memblock.
	- Incorporated review comments of Mark Rutland.

v6:
	- defined and implemented the numa dt binding using
	node property proximity and device node distance-map.
	- renamed dt_numa to of_numa

v5:
        - created base verion of numa.c which creates dummy numa without using dt
          on single socket platforms. Then added patches for dt support.
        - Incorporated review comments from Hanjun Guo.

v4:
done changes as per Arnd review comments.

v3:
Added changes to support numa on arm64 based platforms.
Tested these patches on cavium's multinode(2 node topology) platform.
In this patchset, defined and implemented dt bindings for numa mapping
for core and memory using device node property arm,associativity.

v2:
Defined and implemented numa map for memory, cores to node and
proximity distance matrix of nodes.

v1:
Initial patchset to support numa on arm64 platforms.

Note:
        1. This patchset is tested for numa with dt on
           thunderx single socket and dual socket boards.
        2. Numa DT booting needs the dt memory nodes, which are deleted in current efi-stub,
        hence to try numa with dt, you need to rebase with ard's patchset.
        http://git.linaro.org/people/ard.biesheuvel/linux-arm.git/shortlog/refs/heads/arm64-uefi-early-fdt-handling
	3. PATCH[7,8] are not tested for other architectures.

Ganapatrao Kulkarni (8):
  arm64, numa: adding numa support for arm64 platforms.
  Documentation, dt, numa: dt bindings for numa.
  dt, numa: adding numa dt binding implementation.
  arm64, numa : Enable numa dt for arm64 platforms.
  arm64, dt, thunderx: Add initial dts for Cavium Thunderx in 2 node
    topology.
  arm64, mm, numa: Adding numa balancing support for arm64.
  topology, cleanup: Avoid redefinition of cpumask_of_pcibus in asm
    header files.
  numa, mm, cleanup: remove redundant NODE_DATA macro from asm header
    files.

 Documentation/devicetree/bindings/numa.txt      | 272 ++++++++
 arch/arm64/Kconfig                              |  26 +
 arch/arm64/boot/dts/cavium/Makefile             |   2 +-
 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dts  |  83 +++
 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dtsi | 806 ++++++++++++++++++++++++
 arch/arm64/include/asm/mmzone.h                 |  10 +
 arch/arm64/include/asm/numa.h                   |  45 ++
 arch/arm64/include/asm/pgtable.h                |  18 +
 arch/arm64/include/asm/topology.h               |   7 +
 arch/arm64/kernel/pci.c                         |  10 +
 arch/arm64/kernel/setup.c                       |   4 +
 arch/arm64/kernel/smp.c                         |   4 +
 arch/arm64/mm/Makefile                          |   1 +
 arch/arm64/mm/init.c                            |  34 +-
 arch/arm64/mm/mmu.c                             |   1 +
 arch/arm64/mm/numa.c                            | 404 ++++++++++++
 arch/ia64/include/asm/topology.h                |   4 -
 arch/m32r/include/asm/mmzone.h                  |   4 +-
 arch/metag/include/asm/mmzone.h                 |   4 +-
 arch/metag/include/asm/topology.h               |   3 -
 arch/powerpc/include/asm/mmzone.h               |   8 +-
 arch/powerpc/include/asm/topology.h             |   4 -
 arch/s390/include/asm/mmzone.h                  |   6 +-
 arch/s390/include/asm/pci.h                     |   2 +-
 arch/s390/include/asm/topology.h                |   1 +
 arch/sh/include/asm/mmzone.h                    |   4 +-
 arch/sh/include/asm/topology.h                  |   3 -
 arch/sparc/include/asm/mmzone.h                 |   6 +-
 arch/tile/include/asm/pci.h                     |   2 -
 arch/tile/include/asm/topology.h                |   3 +
 arch/x86/include/asm/mmzone.h                   |   3 +-
 arch/x86/include/asm/mmzone_32.h                |   5 -
 arch/x86/include/asm/mmzone_64.h                |  17 -
 arch/x86/include/asm/pci.h                      |   2 +-
 arch/x86/include/asm/topology.h                 |   1 +
 drivers/of/Kconfig                              |  11 +
 drivers/of/Makefile                             |   1 +
 drivers/of/of_numa.c                            | 207 ++++++
 include/asm-generic/mmzone.h                    |  24 +
 include/asm-generic/topology.h                  |   4 +-
 include/linux/of.h                              |   4 +
 41 files changed, 1986 insertions(+), 74 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/numa.txt
 create mode 100644 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dts
 create mode 100644 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dtsi
 create mode 100644 arch/arm64/include/asm/mmzone.h
 create mode 100644 arch/arm64/include/asm/numa.h
 create mode 100644 arch/arm64/mm/numa.c
 delete mode 100644 arch/x86/include/asm/mmzone_64.h
 create mode 100644 drivers/of/of_numa.c
 create mode 100644 include/asm-generic/mmzone.h

-- 
1.8.1.4

WARNING: multiple messages have this Message-ID (diff)
From: gkulkarni@caviumnetworks.com (Ganapatrao Kulkarni)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v10 0/8] arm64, numa: Add numa support for arm64 platforms
Date: Tue, 2 Feb 2016 15:39:15 +0530	[thread overview]
Message-ID: <1454407763-1017-1-git-send-email-gkulkarni@caviumnetworks.com> (raw)

v10:
	- Incorporated review comments from Rob Herring.
	- Moved numa binding and implementation to devicetree core.
	- Added cleanup patch to remove redundant NODE_DATA macro from asm header files
	- Include numa balancing support for arm64 patch in this series.
	- Fix tile build issue reported by the kbuild robot(patch 7)

v9:	- Added cleanup patch to reuse and avoid redefinition of cpumask_of_pcibus
	  as suggested from Will Deacon and Bjorn Helgaas.
	- Including patch to Make pci-host-generic driver numa aware.
	- Incorporated comment from Shannon Zhao.

v8:
	- Incorporated review comments of Mark Rutland and Will Deacon.
	- Added pci helper function and macro for numa.

v7:
	- managing numa memory mapping using memblock.
	- Incorporated review comments of Mark Rutland.

v6:
	- defined and implemented the numa dt binding using
	node property proximity and device node distance-map.
	- renamed dt_numa to of_numa

v5:
        - created base verion of numa.c which creates dummy numa without using dt
          on single socket platforms. Then added patches for dt support.
        - Incorporated review comments from Hanjun Guo.

v4:
done changes as per Arnd review comments.

v3:
Added changes to support numa on arm64 based platforms.
Tested these patches on cavium's multinode(2 node topology) platform.
In this patchset, defined and implemented dt bindings for numa mapping
for core and memory using device node property arm,associativity.

v2:
Defined and implemented numa map for memory, cores to node and
proximity distance matrix of nodes.

v1:
Initial patchset to support numa on arm64 platforms.

Note:
        1. This patchset is tested for numa with dt on
           thunderx single socket and dual socket boards.
        2. Numa DT booting needs the dt memory nodes, which are deleted in current efi-stub,
        hence to try numa with dt, you need to rebase with ard's patchset.
        http://git.linaro.org/people/ard.biesheuvel/linux-arm.git/shortlog/refs/heads/arm64-uefi-early-fdt-handling
	3. PATCH[7,8] are not tested for other architectures.

Ganapatrao Kulkarni (8):
  arm64, numa: adding numa support for arm64 platforms.
  Documentation, dt, numa: dt bindings for numa.
  dt, numa: adding numa dt binding implementation.
  arm64, numa : Enable numa dt for arm64 platforms.
  arm64, dt, thunderx: Add initial dts for Cavium Thunderx in 2 node
    topology.
  arm64, mm, numa: Adding numa balancing support for arm64.
  topology, cleanup: Avoid redefinition of cpumask_of_pcibus in asm
    header files.
  numa, mm, cleanup: remove redundant NODE_DATA macro from asm header
    files.

 Documentation/devicetree/bindings/numa.txt      | 272 ++++++++
 arch/arm64/Kconfig                              |  26 +
 arch/arm64/boot/dts/cavium/Makefile             |   2 +-
 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dts  |  83 +++
 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dtsi | 806 ++++++++++++++++++++++++
 arch/arm64/include/asm/mmzone.h                 |  10 +
 arch/arm64/include/asm/numa.h                   |  45 ++
 arch/arm64/include/asm/pgtable.h                |  18 +
 arch/arm64/include/asm/topology.h               |   7 +
 arch/arm64/kernel/pci.c                         |  10 +
 arch/arm64/kernel/setup.c                       |   4 +
 arch/arm64/kernel/smp.c                         |   4 +
 arch/arm64/mm/Makefile                          |   1 +
 arch/arm64/mm/init.c                            |  34 +-
 arch/arm64/mm/mmu.c                             |   1 +
 arch/arm64/mm/numa.c                            | 404 ++++++++++++
 arch/ia64/include/asm/topology.h                |   4 -
 arch/m32r/include/asm/mmzone.h                  |   4 +-
 arch/metag/include/asm/mmzone.h                 |   4 +-
 arch/metag/include/asm/topology.h               |   3 -
 arch/powerpc/include/asm/mmzone.h               |   8 +-
 arch/powerpc/include/asm/topology.h             |   4 -
 arch/s390/include/asm/mmzone.h                  |   6 +-
 arch/s390/include/asm/pci.h                     |   2 +-
 arch/s390/include/asm/topology.h                |   1 +
 arch/sh/include/asm/mmzone.h                    |   4 +-
 arch/sh/include/asm/topology.h                  |   3 -
 arch/sparc/include/asm/mmzone.h                 |   6 +-
 arch/tile/include/asm/pci.h                     |   2 -
 arch/tile/include/asm/topology.h                |   3 +
 arch/x86/include/asm/mmzone.h                   |   3 +-
 arch/x86/include/asm/mmzone_32.h                |   5 -
 arch/x86/include/asm/mmzone_64.h                |  17 -
 arch/x86/include/asm/pci.h                      |   2 +-
 arch/x86/include/asm/topology.h                 |   1 +
 drivers/of/Kconfig                              |  11 +
 drivers/of/Makefile                             |   1 +
 drivers/of/of_numa.c                            | 207 ++++++
 include/asm-generic/mmzone.h                    |  24 +
 include/asm-generic/topology.h                  |   4 +-
 include/linux/of.h                              |   4 +
 41 files changed, 1986 insertions(+), 74 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/numa.txt
 create mode 100644 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dts
 create mode 100644 arch/arm64/boot/dts/cavium/thunder-88xx-2n.dtsi
 create mode 100644 arch/arm64/include/asm/mmzone.h
 create mode 100644 arch/arm64/include/asm/numa.h
 create mode 100644 arch/arm64/mm/numa.c
 delete mode 100644 arch/x86/include/asm/mmzone_64.h
 create mode 100644 drivers/of/of_numa.c
 create mode 100644 include/asm-generic/mmzone.h

-- 
1.8.1.4

             reply	other threads:[~2016-02-02 10:21 UTC|newest]

Thread overview: 86+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-02 10:09 Ganapatrao Kulkarni [this message]
2016-02-02 10:21 ` [PATCH v10 0/8] arm64, numa: Add numa support for arm64 platforms Ganapatrao Kulkarni
2016-02-02 10:09 ` Ganapatrao Kulkarni
2016-02-02 10:09 ` Ganapatrao Kulkarni
2016-02-02 10:09 ` Ganapatrao Kulkarni
2016-02-02 10:09 ` [PATCH v10 1/8] arm64, numa: adding " Ganapatrao Kulkarni
2016-02-02 10:21   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09 ` [PATCH v10 2/8] Documentation, dt, numa: dt bindings for numa Ganapatrao Kulkarni
2016-02-02 10:21   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09 ` [PATCH v10 3/8] dt, numa: adding numa dt binding implementation Ganapatrao Kulkarni
2016-02-02 10:21   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 23:34   ` Rob Herring
2016-02-02 23:34     ` Rob Herring
2016-02-02 23:34     ` Rob Herring
2016-02-02 23:34     ` Rob Herring
2016-02-04 11:15     ` Ganapatrao Kulkarni
2016-02-04 11:27       ` Ganapatrao Kulkarni
2016-02-04 11:27       ` Ganapatrao Kulkarni
2016-02-04 11:15       ` Ganapatrao Kulkarni
2016-02-04 11:15       ` Ganapatrao Kulkarni
2016-02-04 11:15       ` Ganapatrao Kulkarni
2016-02-04 11:15       ` Ganapatrao Kulkarni
2016-02-11 14:50   ` Rob Herring
2016-02-11 14:50     ` Rob Herring
2016-02-11 14:50     ` Rob Herring
2016-02-11 14:50     ` Rob Herring
2016-02-11 14:50     ` Rob Herring
2016-02-11 15:32     ` Robert Richter
2016-02-11 15:32       ` Robert Richter
2016-02-11 15:32       ` Robert Richter
2016-02-11 15:32       ` Robert Richter
2016-02-11 15:32       ` Robert Richter
2016-02-11 15:32       ` Robert Richter
2016-02-11 15:32       ` Robert Richter
2016-02-11 15:32       ` Robert Richter
2016-02-11 15:58       ` Ganapatrao Kulkarni
2016-02-11 15:58         ` Ganapatrao Kulkarni
2016-02-11 15:58         ` Ganapatrao Kulkarni
2016-02-11 15:58         ` Ganapatrao Kulkarni
2016-02-11 15:58         ` Ganapatrao Kulkarni
2016-02-11 15:58         ` Ganapatrao Kulkarni
2016-02-11 16:03         ` Rob Herring
2016-02-02 10:09 ` [PATCH v10 4/8] arm64, numa : Enable numa dt for arm64 platforms Ganapatrao Kulkarni
2016-02-02 10:21   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09 ` [PATCH v10 5/8] arm64, dt, thunderx: Add initial dts for Cavium Thunderx in 2 node topology Ganapatrao Kulkarni
2016-02-02 10:21   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09 ` [PATCH v10 6/8] arm64, mm, numa: Adding numa balancing support for arm64 Ganapatrao Kulkarni
2016-02-02 10:21   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09 ` [PATCH v10 7/8] topology, cleanup: Avoid redefinition of cpumask_of_pcibus in asm header files Ganapatrao Kulkarni
2016-02-02 10:21   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09 ` [PATCH v10 8/8] numa, mm, cleanup: remove redundant NODE_DATA macro from " Ganapatrao Kulkarni
2016-02-02 10:21   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-02 10:09   ` Ganapatrao Kulkarni
2016-02-07  8:40   ` kbuild test robot
2016-02-07  8:40     ` kbuild test robot
2016-02-07  8:40     ` kbuild test robot
2016-02-07  8:40     ` kbuild test robot
2016-02-07  8:40     ` kbuild test robot
2016-02-02 11:26 ` [PATCH v10 0/8] arm64, numa: Add numa support for arm64 platforms Robert Richter
2016-02-02 11:26   ` Robert Richter
2016-02-02 11:26   ` Robert Richter
2016-02-02 11:26   ` Robert Richter
2016-02-02 11:26   ` Robert Richter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1454407763-1017-1-git-send-email-gkulkarni@caviumnetworks.com \
    --to=gkulkarni@caviumnetworks.com \
    --cc=Will.Deacon@arm.com \
    --cc=al.stone@linaro.org \
    --cc=ard.biesheuvel@linaro.org \
    --cc=arnd@arndb.de \
    --cc=bhelgaas@google.com \
    --cc=catalin.marinas@arm.com \
    --cc=devicetree@vger.kernel.org \
    --cc=fenghua.yu@intel.com \
    --cc=galak@codeaurora.org \
    --cc=gpkulkarni@gmail.com \
    --cc=grant.likely@linaro.org \
    --cc=hanjun.guo@linaro.org \
    --cc=ijc+devicetree@hellion.org.uk \
    --cc=leif.lindholm@linaro.org \
    --cc=lenb@kernel.org \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-ia64@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-metag@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=linux-sh@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=lorenzo.pieralisi@arm.com \
    --cc=marc.zyngier@arm.com \
    --cc=mark.rutland@arm.com \
    --cc=msalter@redhat.com \
    --cc=pawel.moll@arm.com \
    --cc=rfranz@cavium.com \
    --cc=rjw@rjwysocki.net \
    --cc=robh+dt@kernel.org \
    --cc=steve.capper@linaro.org \
    --cc=tony.luck@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.