On 5/8/20 7:40 AM, Arnd Bergmann wrote: > One cannot select DEVICE_PRIVATE when its dependencies are disabled: > > WARNING: unmet direct dependencies detected for DEVICE_PRIVATE > Depends on [n]: ZONE_DEVICE [=n] > Selected by [m]: > - TEST_HMM [=m] && RUNTIME_TESTING_MENU [=y] && TRANSPARENT_HUGEPAGE [=y] > lib/test_hmm.c:480:8: error: implicit declaration of function > 'memremap_pages' [-Werror,-Wimplicit-function-declaration] > ptr = memremap_pages(&devmem->pagemap, numa_node_id()); > ^ > lib/test_hmm.c:480:8: note: did you mean 'memcmp_pages'? > include/linux/mm.h:3082:12: note: 'memcmp_pages' declared here > extern int memcmp_pages(struct page *page1, struct page *page2); > ^ > lib/test_hmm.c:480:6: error: incompatible integer to pointer conversion > assigning to 'void *' from 'int' [-Werror,-Wint-conversion] > ptr = memremap_pages(&devmem->pagemap, numa_node_id()); > ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > lib/test_hmm.c:1089:4: error: implicit declaration of function > 'memunmap_pages' [-Werror,-Wimplicit-function-declaration] > memunmap_pages(&devmem->pagemap); > > Add a dependency from CONFIG_TEST_HMM to ZONE_DEVICE, to disallow > those broken configurations. > > Fixes: 5d5e54be8a1e ("mm/hmm/test: add selftest driver for HMM") > Signed-off-by: Arnd Bergmann <a...@arndb.de>
Acked-by: Randy Dunlap <rdun...@infradead.org> # build-tested Thanks. > --- > lib/Kconfig.debug | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug > index d9885fa37cc0..63667d62c9d8 100644 > --- a/lib/Kconfig.debug > +++ b/lib/Kconfig.debug > @@ -2262,6 +2262,7 @@ config TEST_MEMINIT > config TEST_HMM > tristate "Test HMM (Heterogeneous Memory Management)" > depends on TRANSPARENT_HUGEPAGE > + depends on ZONE_DEVICE > select DEVICE_PRIVATE > select HMM_MIRROR > select MMU_NOTIFIER > -- ~Randy