Re: [HMM 12/15] mm/migrate: new memory migration helper for use with device memory v4

From: Jerome Glisse
Date: Wed Jun 07 2017 - 10:06:38 EST


> On Fri, Jun 2, 2017 at 8:35 AM, Jerome Glisse <jglisse@xxxxxxxxxx> wrote:
> > On Wed, May 31, 2017 at 01:59:54PM +1000, Balbir Singh wrote:
> >> On Wed, 24 May 2017 13:20:21 -0400
> >> JÃrÃme Glisse <jglisse@xxxxxxxxxx> wrote:
> >>
> >> > This patch add a new memory migration helpers, which migrate memory
> >> > backing a range of virtual address of a process to different memory
> >> > (which can be allocated through special allocator). It differs from
> >> > numa migration by working on a range of virtual address and thus by
> >> > doing migration in chunk that can be large enough to use DMA engine
> >> > or special copy offloading engine.
> >> >
> >> > Expected users are any one with heterogeneous memory where different
> >> > memory have different characteristics (latency, bandwidth, ...). As
> >> > an example IBM platform with CAPI bus can make use of this feature
> >> > to migrate between regular memory and CAPI device memory. New CPU
> >> > architecture with a pool of high performance memory not manage as
> >> > cache but presented as regular memory (while being faster and with
> >> > lower latency than DDR) will also be prime user of this patch.
> >> >
> >> > Migration to private device memory will be useful for device that
> >> > have large pool of such like GPU, NVidia plans to use HMM for that.
> >> >
> >>
> >> It is helpful, for HMM-CDM however we would like to avoid the downsides
> >> of MIGRATE_SYNC_NOCOPY
> >
> > What are the downside you are referring too ?
>
> IIUC, MIGRATE_SYNC_NO_COPY is for anonymous memory only.

It can migrate anything, file back page too. It just forbid that latter
case if it is ZONE_DEVICE HMM. I should have time now to finish the CDM
patchset and i will post, previous patches already enabled file back
page migration for HMM-CDM.

The NOCOPY is for no CPUCOPY, i couldn't think of a better name.

Cheers,
JÃrÃme