lkml.org 
[lkml]   [2019]   [Apr]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] mm/hmm: kconfig split HMM address space mirroring from device memory
On Wed, Apr 17, 2019 at 02:26:18PM -0400, Jerome Glisse wrote:
> On Wed, Apr 17, 2019 at 11:21:18AM -0700, Guenter Roeck wrote:
> > On Thu, Apr 11, 2019 at 02:03:26PM -0400, jglisse@redhat.com wrote:
> > > From: Jérôme Glisse <jglisse@redhat.com>
> > >
> > > To allow building device driver that only care about address space
> > > mirroring (like RDMA ODP) on platform that do not have all the pre-
> > > requisite for HMM device memory (like ZONE_DEVICE on ARM) split the
> > > HMM_MIRROR option dependency from the HMM_DEVICE dependency.
> > >
> > > Signed-off-by: Jérôme Glisse <jglisse@redhat.com>
> > > Cc: Leon Romanovsky <leonro@mellanox.com>
> > > Cc: Jason Gunthorpe <jgg@mellanox.com>
> > > Cc: Andrew Morton <akpm@linux-foundation.org>
> > > Cc: Ralph Campbell <rcampbell@nvidia.com>
> > > Cc: John Hubbard <jhubbard@nvidia.com>
> > > Tested-by: Leon Romanovsky <leonro@mellanox.com>
> >
> > In case it hasn't been reported already:
> >
> > mm/hmm.c: In function 'hmm_vma_handle_pmd':
> > mm/hmm.c:537:8: error: implicit declaration of function 'pmd_pfn'; did you mean 'pte_pfn'?
>
> No it is pmd_pfn
>
FWIW, this is a compiler message.

> >
> > and similar errors when building alpha:allmodconfig (and maybe others).
>
> Does HMM_MIRROR get enabled in your config ? It should not
> does adding depends on (X86_64 || PPC64) to ARCH_HAS_HMM
> fix it ? I should just add that there for arch i do build.
>

The eror is seen with is alpha:allmodconfig. "make ARCH=alpha allmodconfig".
It does set CONFIG_ARCH_HAS_HMM=y.

This patch has additional problems. For arm64:allmodconfig
and many others, when running "make ARCH=arm64 allmodconfig":

WARNING: unmet direct dependencies detected for DEVICE_PRIVATE
Depends on [n]: ARCH_HAS_HMM_DEVICE [=n] && ZONE_DEVICE [=n]
Selected by [m]:
- DRM_NOUVEAU_SVM [=y] && HAS_IOMEM [=y] && ARCH_HAS_HMM [=y] && DRM_NOUVEAU [=m] && STAGING [=y]

WARNING: unmet direct dependencies detected for DEVICE_PRIVATE
Depends on [n]: ARCH_HAS_HMM_DEVICE [=n] && ZONE_DEVICE [=n]
Selected by [m]:
- DRM_NOUVEAU_SVM [=y] && HAS_IOMEM [=y] && ARCH_HAS_HMM [=y] && DRM_NOUVEAU [=m] && STAGING [=y]

WARNING: unmet direct dependencies detected for DEVICE_PRIVATE
Depends on [n]: ARCH_HAS_HMM_DEVICE [=n] && ZONE_DEVICE [=n]
Selected by [m]:
- DRM_NOUVEAU_SVM [=y] && HAS_IOMEM [=y] && ARCH_HAS_HMM [=y] && DRM_NOUVEAU [=m] && STAGING [=y]

This in turn results in:

arch64-linux-ld: mm/memory.o: in function `do_swap_page':
memory.c:(.text+0x798c): undefined reference to `device_private_entry_fault'

not only on arm64, but on other architectures as well.

All those problems are gone after reverting this patch.

Guenter

\
 
 \ /
  Last update: 2019-04-17 21:34    [W:0.044 / U:1.772 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site