From: ar@linux.vnet.ibm.com (Andrea Reale)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 0/5] Memory hotplug support for arm64 - complete patchset v2
Date: Thu, 23 Nov 2017 11:13:35 +0000 [thread overview]
Message-ID: <cover.1511433386.git.ar@linux.vnet.ibm.com> (raw)
Hi all,
this is a second round of patches to introduce memory hotplug and
hotremove support for arm64. It builds on the work previously published at
[1] and it implements the feedback received in the first round of reviews.
The patchset applies and has been tested on commit bebc6082da0a ("Linux
4.14").
Due to a small regression introduced with commit 8135d8926c08
("mm: memory_hotplug: memory hotremove supports thp migration"), you
will need to appy patch [2] first, until the fix is not upstreamed.
Comments and feedback are gold.
[1] https://lkml.org/lkml/2017/4/11/536
[2] https://lkml.org/lkml/2017/11/20/902
Changes v1->v2:
- swapper pgtable updated in place on hot add, avoiding unnecessary copy
- stop_machine used to updated swapper on hot add, avoiding races
- introduced check on offlining state before hot remove
- new memblock flag used to mark partially unused vmemmap pages, avoiding
the nasty 0xFD hack used in the prev rev (and in x86 hot remove code)
- proper cleaning sequence for p[um]ds,ptes and related TLB management
- Removed macros that changed hot remove behavior based on number
of pgtable levels. Now this is hidden in the pgtable traversal macros.
- Check on the corner case where P[UM]Ds would have to be split during
hot remove: now this is forbidden.
- Minor fixes and refactoring.
Andrea Reale (4):
mm: memory_hotplug: Remove assumption on memory state before hotremove
mm: memory_hotplug: memblock to track partially removed vmemmap mem
mm: memory_hotplug: Add memory hotremove probe device
mm: memory-hotplug: Add memory hot remove support for arm64
Maciej Bielski (1):
mm: memory_hotplug: Memory hotplug (add) support for arm64
arch/arm64/Kconfig | 15 +
arch/arm64/configs/defconfig | 2 +
arch/arm64/include/asm/mmu.h | 7 +
arch/arm64/mm/init.c | 116 ++++++++
arch/arm64/mm/mmu.c | 609 ++++++++++++++++++++++++++++++++++++++++-
drivers/acpi/acpi_memhotplug.c | 2 +-
drivers/base/memory.c | 34 ++-
include/linux/memblock.h | 12 +
include/linux/memory_hotplug.h | 9 +-
mm/memblock.c | 32 +++
mm/memory_hotplug.c | 13 +-
11 files changed, 835 insertions(+), 16 deletions(-)
--
2.7.4
WARNING: multiple messages have this Message-ID (diff)
From: Andrea Reale <ar@linux.vnet.ibm.com>
To: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org,
m.bielski@virtualopensystems.com, arunks@qti.qualcomm.com,
mark.rutland@arm.com, scott.branden@broadcom.com,
will.deacon@arm.com, qiuxishi@huawei.com,
catalin.marinas@arm.com, mhocko@suse.com, realean2@ie.ibm.com
Subject: [PATCH v2 0/5] Memory hotplug support for arm64 - complete patchset v2
Date: Thu, 23 Nov 2017 11:13:35 +0000 [thread overview]
Message-ID: <cover.1511433386.git.ar@linux.vnet.ibm.com> (raw)
Hi all,
this is a second round of patches to introduce memory hotplug and
hotremove support for arm64. It builds on the work previously published at
[1] and it implements the feedback received in the first round of reviews.
The patchset applies and has been tested on commit bebc6082da0a ("Linux
4.14").
Due to a small regression introduced with commit 8135d8926c08
("mm: memory_hotplug: memory hotremove supports thp migration"), you
will need to appy patch [2] first, until the fix is not upstreamed.
Comments and feedback are gold.
[1] https://lkml.org/lkml/2017/4/11/536
[2] https://lkml.org/lkml/2017/11/20/902
Changes v1->v2:
- swapper pgtable updated in place on hot add, avoiding unnecessary copy
- stop_machine used to updated swapper on hot add, avoiding races
- introduced check on offlining state before hot remove
- new memblock flag used to mark partially unused vmemmap pages, avoiding
the nasty 0xFD hack used in the prev rev (and in x86 hot remove code)
- proper cleaning sequence for p[um]ds,ptes and related TLB management
- Removed macros that changed hot remove behavior based on number
of pgtable levels. Now this is hidden in the pgtable traversal macros.
- Check on the corner case where P[UM]Ds would have to be split during
hot remove: now this is forbidden.
- Minor fixes and refactoring.
Andrea Reale (4):
mm: memory_hotplug: Remove assumption on memory state before hotremove
mm: memory_hotplug: memblock to track partially removed vmemmap mem
mm: memory_hotplug: Add memory hotremove probe device
mm: memory-hotplug: Add memory hot remove support for arm64
Maciej Bielski (1):
mm: memory_hotplug: Memory hotplug (add) support for arm64
arch/arm64/Kconfig | 15 +
arch/arm64/configs/defconfig | 2 +
arch/arm64/include/asm/mmu.h | 7 +
arch/arm64/mm/init.c | 116 ++++++++
arch/arm64/mm/mmu.c | 609 ++++++++++++++++++++++++++++++++++++++++-
drivers/acpi/acpi_memhotplug.c | 2 +-
drivers/base/memory.c | 34 ++-
include/linux/memblock.h | 12 +
include/linux/memory_hotplug.h | 9 +-
mm/memblock.c | 32 +++
mm/memory_hotplug.c | 13 +-
11 files changed, 835 insertions(+), 16 deletions(-)
--
2.7.4
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
WARNING: multiple messages have this Message-ID (diff)
From: Andrea Reale <ar@linux.vnet.ibm.com>
To: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org,
m.bielski@virtualopensystems.com, arunks@qti.qualcomm.com,
mark.rutland@arm.com, scott.branden@broadcom.com,
will.deacon@arm.com, qiuxishi@huawei.com,
catalin.marinas@arm.com, mhocko@suse.com, realean2@ie.ibm.com
Subject: [PATCH v2 0/5] Memory hotplug support for arm64 - complete patchset v2
Date: Thu, 23 Nov 2017 11:13:35 +0000 [thread overview]
Message-ID: <cover.1511433386.git.ar@linux.vnet.ibm.com> (raw)
Hi all,
this is a second round of patches to introduce memory hotplug and
hotremove support for arm64. It builds on the work previously published at
[1] and it implements the feedback received in the first round of reviews.
The patchset applies and has been tested on commit bebc6082da0a ("Linux
4.14").
Due to a small regression introduced with commit 8135d8926c08
("mm: memory_hotplug: memory hotremove supports thp migration"), you
will need to appy patch [2] first, until the fix is not upstreamed.
Comments and feedback are gold.
[1] https://lkml.org/lkml/2017/4/11/536
[2] https://lkml.org/lkml/2017/11/20/902
Changes v1->v2:
- swapper pgtable updated in place on hot add, avoiding unnecessary copy
- stop_machine used to updated swapper on hot add, avoiding races
- introduced check on offlining state before hot remove
- new memblock flag used to mark partially unused vmemmap pages, avoiding
the nasty 0xFD hack used in the prev rev (and in x86 hot remove code)
- proper cleaning sequence for p[um]ds,ptes and related TLB management
- Removed macros that changed hot remove behavior based on number
of pgtable levels. Now this is hidden in the pgtable traversal macros.
- Check on the corner case where P[UM]Ds would have to be split during
hot remove: now this is forbidden.
- Minor fixes and refactoring.
Andrea Reale (4):
mm: memory_hotplug: Remove assumption on memory state before hotremove
mm: memory_hotplug: memblock to track partially removed vmemmap mem
mm: memory_hotplug: Add memory hotremove probe device
mm: memory-hotplug: Add memory hot remove support for arm64
Maciej Bielski (1):
mm: memory_hotplug: Memory hotplug (add) support for arm64
arch/arm64/Kconfig | 15 +
arch/arm64/configs/defconfig | 2 +
arch/arm64/include/asm/mmu.h | 7 +
arch/arm64/mm/init.c | 116 ++++++++
arch/arm64/mm/mmu.c | 609 ++++++++++++++++++++++++++++++++++++++++-
drivers/acpi/acpi_memhotplug.c | 2 +-
drivers/base/memory.c | 34 ++-
include/linux/memblock.h | 12 +
include/linux/memory_hotplug.h | 9 +-
mm/memblock.c | 32 +++
mm/memory_hotplug.c | 13 +-
11 files changed, 835 insertions(+), 16 deletions(-)
--
2.7.4
next reply other threads:[~2017-11-23 11:13 UTC|newest]
Thread overview: 148+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-11-23 11:13 Andrea Reale [this message]
2017-11-23 11:13 ` [PATCH v2 0/5] Memory hotplug support for arm64 - complete patchset v2 Andrea Reale
2017-11-23 11:13 ` Andrea Reale
2017-11-23 11:13 ` [PATCH v2 1/5] mm: memory_hotplug: Memory hotplug (add) support for arm64 Maciej Bielski
2017-11-23 11:13 ` Maciej Bielski
2017-11-23 11:13 ` Maciej Bielski
2017-11-24 5:55 ` Arun KS
2017-11-24 5:55 ` Arun KS
2017-11-24 5:55 ` Arun KS
2017-11-24 9:42 ` Andrea Reale
2017-11-24 9:42 ` Andrea Reale
2017-11-24 9:42 ` Andrea Reale
2017-11-24 10:53 ` Maciej Bielski
2017-11-24 10:53 ` Maciej Bielski
2017-11-24 10:53 ` Maciej Bielski
2017-11-26 6:58 ` Arun KS
2017-11-26 6:58 ` Arun KS
2017-11-26 6:58 ` Arun KS
2017-11-27 15:19 ` Robin Murphy
2017-11-27 15:19 ` Robin Murphy
2017-11-27 15:19 ` Robin Murphy
2017-11-27 16:39 ` Maciej Bielski
2017-11-27 16:39 ` Maciej Bielski
2017-11-27 16:39 ` Maciej Bielski
2017-11-27 17:11 ` Andrea Reale
2017-11-27 17:11 ` Andrea Reale
2017-11-27 17:11 ` Andrea Reale
2017-11-23 11:14 ` [PATCH v2 2/5] mm: memory_hotplug: Remove assumption on memory state before hotremove Andrea Reale
2017-11-23 11:14 ` Andrea Reale
2017-11-23 11:14 ` Andrea Reale
2017-11-23 22:18 ` Rafael J. Wysocki
2017-11-23 22:18 ` Rafael J. Wysocki
2017-11-23 22:18 ` Rafael J. Wysocki
2017-11-24 14:39 ` Rafael J. Wysocki
2017-11-24 14:39 ` Rafael J. Wysocki
2017-11-24 14:39 ` Rafael J. Wysocki
2017-11-24 14:49 ` Andrea Reale
2017-11-24 14:49 ` Andrea Reale
2017-11-24 14:49 ` Andrea Reale
2017-11-24 15:43 ` Michal Hocko
2017-11-24 15:43 ` Michal Hocko
2017-11-24 15:43 ` Michal Hocko
2017-11-24 15:54 ` Andrea Reale
2017-11-24 15:54 ` Andrea Reale
2017-11-24 15:54 ` Andrea Reale
2017-11-24 18:17 ` Michal Hocko
2017-11-24 18:17 ` Michal Hocko
2017-11-24 18:17 ` Michal Hocko
2017-11-29 1:20 ` joeyli
2017-11-29 1:20 ` joeyli
2017-11-29 1:20 ` joeyli
2017-11-30 9:47 ` Michal Hocko
2017-11-30 9:47 ` Michal Hocko
2017-11-30 9:47 ` Michal Hocko
2017-11-27 15:20 ` Robin Murphy
2017-11-27 15:20 ` Robin Murphy
2017-11-27 15:20 ` Robin Murphy
2017-11-27 17:44 ` Andrea Reale
2017-11-27 17:44 ` Andrea Reale
2017-11-27 17:44 ` Andrea Reale
2017-11-29 0:49 ` joeyli
2017-11-29 0:49 ` joeyli
2017-11-29 0:49 ` joeyli
2017-11-29 1:52 ` joeyli
2017-11-29 1:52 ` joeyli
2017-11-29 1:52 ` joeyli
2017-12-04 11:28 ` Andrea Reale
2017-12-04 11:28 ` Andrea Reale
2017-12-04 11:28 ` Andrea Reale
2017-12-04 14:05 ` Rafael J. Wysocki
2017-12-04 14:05 ` Rafael J. Wysocki
2017-12-04 14:05 ` Rafael J. Wysocki
2017-11-23 11:14 ` [PATCH v2 3/5] mm: memory_hotplug: memblock to track partially removed vmemmap mem Andrea Reale
2017-11-23 11:14 ` Andrea Reale
2017-11-23 11:14 ` Andrea Reale
2017-11-27 15:20 ` Robin Murphy
2017-11-27 15:20 ` Robin Murphy
2017-11-27 15:20 ` Robin Murphy
2017-11-27 17:38 ` Andrea Reale
2017-11-27 17:38 ` Andrea Reale
2017-11-27 17:38 ` Andrea Reale
2017-11-30 14:51 ` Michal Hocko
2017-11-30 14:51 ` Michal Hocko
2017-11-30 14:51 ` Michal Hocko
2017-12-04 11:49 ` Andrea Reale
2017-12-04 11:49 ` Andrea Reale
2017-12-04 11:49 ` Andrea Reale
2017-12-04 12:32 ` Michal Hocko
2017-12-04 12:32 ` Michal Hocko
2017-12-04 12:32 ` Michal Hocko
2017-12-04 12:42 ` Andrea Reale
2017-12-04 12:42 ` Andrea Reale
2017-12-04 12:42 ` Andrea Reale
2017-12-04 12:48 ` Michal Hocko
2017-12-04 12:48 ` Michal Hocko
2017-12-04 12:48 ` Michal Hocko
2017-11-23 11:14 ` [PATCH v2 4/5] mm: memory_hotplug: Add memory hotremove probe device Andrea Reale
2017-11-23 11:14 ` Andrea Reale
2017-11-23 11:14 ` Andrea Reale
2017-11-24 10:35 ` zhong jiang
2017-11-24 10:35 ` zhong jiang
2017-11-24 10:35 ` zhong jiang
2017-11-24 10:44 ` Andrea Reale
2017-11-24 10:44 ` Andrea Reale
2017-11-24 10:44 ` Andrea Reale
2017-11-24 12:17 ` zhong jiang
2017-11-24 12:17 ` zhong jiang
2017-11-24 12:17 ` zhong jiang
2017-11-24 14:29 ` Andrea Reale
2017-11-24 14:29 ` Andrea Reale
2017-11-24 14:29 ` Andrea Reale
2017-12-04 17:50 ` Reza Arbab
2017-12-04 17:50 ` Reza Arbab
2017-12-04 17:50 ` Reza Arbab
2017-11-27 15:33 ` Robin Murphy
2017-11-27 15:33 ` Robin Murphy
2017-11-27 15:33 ` Robin Murphy
2017-11-27 17:14 ` Andrea Reale
2017-11-27 17:14 ` Andrea Reale
2017-11-27 17:14 ` Andrea Reale
2017-11-30 14:49 ` Michal Hocko
2017-11-30 14:49 ` Michal Hocko
2017-11-30 14:49 ` Michal Hocko
2017-12-04 11:51 ` Andrea Reale
2017-12-04 11:51 ` Andrea Reale
2017-12-04 11:51 ` Andrea Reale
2017-12-04 12:33 ` Michal Hocko
2017-12-04 12:33 ` Michal Hocko
2017-12-04 12:33 ` Michal Hocko
2017-12-04 12:44 ` Andrea Reale
2017-12-04 12:44 ` Andrea Reale
2017-12-04 12:44 ` Andrea Reale
2017-11-23 11:15 ` [PATCH v2 5/5] mm: memory-hotplug: Add memory hot remove support for arm64 Andrea Reale
2017-11-23 11:15 ` Andrea Reale
2017-11-23 11:15 ` Andrea Reale
2017-11-23 16:02 ` [PATCH v2 0/5] Memory hotplug support for arm64 - complete patchset v2 Michal Hocko
2017-11-23 16:02 ` Michal Hocko
2017-11-23 16:02 ` Michal Hocko
2017-11-23 17:33 ` Andrea Reale
2017-11-23 17:33 ` Andrea Reale
2017-11-23 17:33 ` Andrea Reale
2017-11-30 14:57 ` Michal Hocko
2017-11-30 14:57 ` Michal Hocko
2017-11-30 14:57 ` Michal Hocko
2017-12-04 11:34 ` Andrea Reale
2017-12-04 11:34 ` Andrea Reale
2017-12-04 11:34 ` Andrea Reale
2017-11-24 10:22 ` [PATCH v2 2/5] mm: memory_hotplug: Remove assumption on memory state before hotremove Andrea Reale
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=cover.1511433386.git.ar@linux.vnet.ibm.com \
--to=ar@linux.vnet.ibm.com \
--cc=linux-arm-kernel@lists.infradead.org \
/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.