Message ID | 20210120014333.222547-11-pasha.tatashin@soleen.com |
---|---|
State | Superseded |
Headers | show |
Series | prohibit pinning pages in ZONE_MOVABLE | expand |
On Wed, Jan 20, 2021 at 8:22 AM Jason Gunthorpe <jgg@ziepe.ca> wrote: > > On Tue, Jan 19, 2021 at 08:43:29PM -0500, Pavel Tatashin wrote: > > +.. note:: > > + Techniques that rely on long-term pinnings of memory (especially, RDMA and > > + vfio) are fundamentally problematic with ZONE_MOVABLE and, therefore, memory > > + hot remove. Pinned pages cannot reside on ZONE_MOVABLE, to guarantee that > > + memory can still get hot removed - be aware that pinning can fail even if > > + there is plenty of free memory in ZONE_MOVABLE. In addition, using > > + ZONE_MOVABLE might make page pinning more expensive, because pages have to be > > + migrated off that zone first. > > Just to point out, if anyone is using RDMA/etc with hotplug memory, > this series is likekly going to be a major regression for those users. Right: one is because we now prohibit pinning any pages in a movable zone, second reason is because we now check every page during migration that fixes an existing bug. > > Jason
diff --git a/Documentation/admin-guide/mm/memory-hotplug.rst b/Documentation/admin-guide/mm/memory-hotplug.rst index 5c4432c96c4b..c6618f99f765 100644 --- a/Documentation/admin-guide/mm/memory-hotplug.rst +++ b/Documentation/admin-guide/mm/memory-hotplug.rst @@ -357,6 +357,15 @@ creates ZONE_MOVABLE as following. Unfortunately, there is no information to show which memory block belongs to ZONE_MOVABLE. This is TBD. +.. note:: + Techniques that rely on long-term pinnings of memory (especially, RDMA and + vfio) are fundamentally problematic with ZONE_MOVABLE and, therefore, memory + hot remove. Pinned pages cannot reside on ZONE_MOVABLE, to guarantee that + memory can still get hot removed - be aware that pinning can fail even if + there is plenty of free memory in ZONE_MOVABLE. In addition, using + ZONE_MOVABLE might make page pinning more expensive, because pages have to be + migrated off that zone first. + .. _memory_hotplug_how_to_offline_memory: How to offline memory