* [PATCH 1/2] HMM: test: fix CONFIG_DEVICE_PRIVATE dependencies
@ 2020-05-08 14:40 Arnd Bergmann
2020-05-08 14:40 ` Arnd Bergmann
` (2 more replies)
0 siblings, 3 replies; 18+ messages in thread
From: Arnd Bergmann @ 2020-05-08 14:40 UTC (permalink / raw)
To: Jason Gunthorpe, Ralph Campbell, Jérôme Glisse
Cc: Arnd Bergmann, Jason Gunthorpe, Andrew Morton, Masahiro Yamada,
Changbin Du, Randy Dunlap, Stephen Rothwell, Anshuman Khandual,
Krzysztof Kozlowski, linux-kernel
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 <arnd@arndb.de>
---
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
--
2.26.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
2020-05-08 14:40 [PATCH 1/2] HMM: test: fix CONFIG_DEVICE_PRIVATE dependencies Arnd Bergmann
@ 2020-05-08 14:40 ` Arnd Bergmann
2020-05-08 17:00 ` [PATCH 1/2] HMM: test: fix CONFIG_DEVICE_PRIVATE dependencies Ralph Campbell
2020-05-08 18:05 ` Randy Dunlap
2 siblings, 0 replies; 18+ messages in thread
From: Arnd Bergmann @ 2020-05-08 14:40 UTC (permalink / raw)
To: Ben Skeggs, Jason Gunthorpe
Cc: Arnd Bergmann, Felix Kuehling, Christoph Hellwig, John Hubbard,
Jason Gunthorpe, David Airlie, Daniel Vetter, Dan Williams,
Ira Weiny, dri-devel, nouveau, linux-kernel
CONFIG_DEVICE_PRIVATE cannot be selected in configurations
without ZONE_DEVICE:
WARNING: unmet direct dependencies detected for DEVICE_PRIVATE
Depends on [n]: ZONE_DEVICE [=n]
Selected by [y]:
- DRM_NOUVEAU_SVM [=y] && HAS_IOMEM [=y] && DRM_NOUVEAU [=y] && MMU [=y] && STAGING [=y]
kernel/resource.c:1653:28: error: use of undeclared identifier 'PA_SECTION_SHIFT'
size = ALIGN(size, 1UL << PA_SECTION_SHIFT);
^
kernel/resource.c:1654:48: error: use of undeclared identifier 'MAX_PHYSMEM_BITS'
Add a dependency for Nouveau to avoid broken randconfig builds.
Fixes: d2c63df2242e ("mm/hmm: make CONFIG_DEVICE_PRIVATE into a select")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
drivers/gpu/drm/nouveau/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpu/drm/nouveau/Kconfig b/drivers/gpu/drm/nouveau/Kconfig
index af5793f3e7c2..996ec5475908 100644
--- a/drivers/gpu/drm/nouveau/Kconfig
+++ b/drivers/gpu/drm/nouveau/Kconfig
@@ -87,6 +87,7 @@ config DRM_NOUVEAU_BACKLIGHT
config DRM_NOUVEAU_SVM
bool "(EXPERIMENTAL) Enable SVM (Shared Virtual Memory) support"
depends on DRM_NOUVEAU
+ depends on ZONE_DEVICE
depends on MMU
depends on STAGING
select DEVICE_PRIVATE
--
2.26.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
@ 2020-05-08 14:40 ` Arnd Bergmann
0 siblings, 0 replies; 18+ messages in thread
From: Arnd Bergmann @ 2020-05-08 14:40 UTC (permalink / raw)
To: Ben Skeggs, Jason Gunthorpe
Cc: Arnd Bergmann, David Airlie, John Hubbard, Felix Kuehling,
linux-kernel, dri-devel, Jason Gunthorpe, nouveau, Dan Williams,
Ira Weiny, Christoph Hellwig
CONFIG_DEVICE_PRIVATE cannot be selected in configurations
without ZONE_DEVICE:
WARNING: unmet direct dependencies detected for DEVICE_PRIVATE
Depends on [n]: ZONE_DEVICE [=n]
Selected by [y]:
- DRM_NOUVEAU_SVM [=y] && HAS_IOMEM [=y] && DRM_NOUVEAU [=y] && MMU [=y] && STAGING [=y]
kernel/resource.c:1653:28: error: use of undeclared identifier 'PA_SECTION_SHIFT'
size = ALIGN(size, 1UL << PA_SECTION_SHIFT);
^
kernel/resource.c:1654:48: error: use of undeclared identifier 'MAX_PHYSMEM_BITS'
Add a dependency for Nouveau to avoid broken randconfig builds.
Fixes: d2c63df2242e ("mm/hmm: make CONFIG_DEVICE_PRIVATE into a select")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
drivers/gpu/drm/nouveau/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpu/drm/nouveau/Kconfig b/drivers/gpu/drm/nouveau/Kconfig
index af5793f3e7c2..996ec5475908 100644
--- a/drivers/gpu/drm/nouveau/Kconfig
+++ b/drivers/gpu/drm/nouveau/Kconfig
@@ -87,6 +87,7 @@ config DRM_NOUVEAU_BACKLIGHT
config DRM_NOUVEAU_SVM
bool "(EXPERIMENTAL) Enable SVM (Shared Virtual Memory) support"
depends on DRM_NOUVEAU
+ depends on ZONE_DEVICE
depends on MMU
depends on STAGING
select DEVICE_PRIVATE
--
2.26.0
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply related [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
2020-05-08 14:40 ` Arnd Bergmann
@ 2020-05-08 15:00 ` Jason Gunthorpe
-1 siblings, 0 replies; 18+ messages in thread
From: Jason Gunthorpe @ 2020-05-08 15:00 UTC (permalink / raw)
To: Arnd Bergmann
Cc: Ben Skeggs, Felix Kuehling, Christoph Hellwig, John Hubbard,
David Airlie, Daniel Vetter, Dan Williams, Ira Weiny, dri-devel,
nouveau, linux-kernel
On Fri, May 08, 2020 at 04:40:09PM +0200, Arnd Bergmann wrote:
> CONFIG_DEVICE_PRIVATE cannot be selected in configurations
> without ZONE_DEVICE:
It is kind of unfortunate to lift dependencies from DEVICE_PRIVATE
into the users, is this really how kconfig is supposed to work or is
something else wrong here?
Jason
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
@ 2020-05-08 15:00 ` Jason Gunthorpe
0 siblings, 0 replies; 18+ messages in thread
From: Jason Gunthorpe @ 2020-05-08 15:00 UTC (permalink / raw)
To: Arnd Bergmann
Cc: David Airlie, John Hubbard, Felix Kuehling, linux-kernel,
dri-devel, Ben Skeggs, nouveau, Dan Williams, Ira Weiny,
Christoph Hellwig
On Fri, May 08, 2020 at 04:40:09PM +0200, Arnd Bergmann wrote:
> CONFIG_DEVICE_PRIVATE cannot be selected in configurations
> without ZONE_DEVICE:
It is kind of unfortunate to lift dependencies from DEVICE_PRIVATE
into the users, is this really how kconfig is supposed to work or is
something else wrong here?
Jason
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
2020-05-08 15:00 ` Jason Gunthorpe
@ 2020-05-08 15:05 ` Arnd Bergmann
-1 siblings, 0 replies; 18+ messages in thread
From: Arnd Bergmann @ 2020-05-08 15:05 UTC (permalink / raw)
To: Jason Gunthorpe
Cc: Ben Skeggs, Felix Kuehling, Christoph Hellwig, John Hubbard,
David Airlie, Daniel Vetter, Dan Williams, Ira Weiny, dri-devel,
ML nouveau, linux-kernel
On Fri, May 8, 2020 at 5:00 PM Jason Gunthorpe <jgg@mellanox.com> wrote:
>
> On Fri, May 08, 2020 at 04:40:09PM +0200, Arnd Bergmann wrote:
> > CONFIG_DEVICE_PRIVATE cannot be selected in configurations
> > without ZONE_DEVICE:
>
> It is kind of unfortunate to lift dependencies from DEVICE_PRIVATE
> into the users, is this really how kconfig is supposed to work or is
> something else wrong here?
Usually the problem is trying to use 'select' for something that can
be done with 'depends on'. I have actually no idea what
CONFIG_DEVICE_PRIVATE does, as it lacks a help text
and is a rather generic term.
Would it be possible to decouple DEVICE_PRIVATE from ZONE_DEVICE?
It sounds like the first is related to the device model, while
the second is for memory management, so maybe the dependency
is not necessary.
Arnd
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
@ 2020-05-08 15:05 ` Arnd Bergmann
0 siblings, 0 replies; 18+ messages in thread
From: Arnd Bergmann @ 2020-05-08 15:05 UTC (permalink / raw)
To: Jason Gunthorpe
Cc: David Airlie, John Hubbard, Felix Kuehling, linux-kernel,
dri-devel, Ben Skeggs, ML nouveau, Dan Williams, Ira Weiny,
Christoph Hellwig
On Fri, May 8, 2020 at 5:00 PM Jason Gunthorpe <jgg@mellanox.com> wrote:
>
> On Fri, May 08, 2020 at 04:40:09PM +0200, Arnd Bergmann wrote:
> > CONFIG_DEVICE_PRIVATE cannot be selected in configurations
> > without ZONE_DEVICE:
>
> It is kind of unfortunate to lift dependencies from DEVICE_PRIVATE
> into the users, is this really how kconfig is supposed to work or is
> something else wrong here?
Usually the problem is trying to use 'select' for something that can
be done with 'depends on'. I have actually no idea what
CONFIG_DEVICE_PRIVATE does, as it lacks a help text
and is a rather generic term.
Would it be possible to decouple DEVICE_PRIVATE from ZONE_DEVICE?
It sounds like the first is related to the device model, while
the second is for memory management, so maybe the dependency
is not necessary.
Arnd
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 1/2] HMM: test: fix CONFIG_DEVICE_PRIVATE dependencies
2020-05-08 14:40 [PATCH 1/2] HMM: test: fix CONFIG_DEVICE_PRIVATE dependencies Arnd Bergmann
2020-05-08 14:40 ` Arnd Bergmann
@ 2020-05-08 17:00 ` Ralph Campbell
2020-05-08 18:05 ` Randy Dunlap
2 siblings, 0 replies; 18+ messages in thread
From: Ralph Campbell @ 2020-05-08 17:00 UTC (permalink / raw)
To: Arnd Bergmann, Jason Gunthorpe, Jérôme Glisse
Cc: Jason Gunthorpe, Andrew Morton, Masahiro Yamada, Changbin Du,
Randy Dunlap, Stephen Rothwell, Anshuman Khandual,
Krzysztof Kozlowski, linux-kernel
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.
Thanks for fixing this.
>
> Fixes: 5d5e54be8a1e ("mm/hmm/test: add selftest driver for HMM")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Since the HMM tests are not yet in Linus' tree, shouldn't this patch just be folded
into Jason's hmm tree instead of a Fixes: line?
Reviewed-by: Ralph Campbell <rcampbell@nvidia.com>
> ---
> 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
>
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
2020-05-08 14:40 ` Arnd Bergmann
@ 2020-05-08 18:05 ` Randy Dunlap
-1 siblings, 0 replies; 18+ messages in thread
From: Randy Dunlap @ 2020-05-08 18:05 UTC (permalink / raw)
To: Arnd Bergmann, Ben Skeggs, Jason Gunthorpe
Cc: Felix Kuehling, Christoph Hellwig, John Hubbard, Jason Gunthorpe,
David Airlie, Daniel Vetter, Dan Williams, Ira Weiny, dri-devel,
nouveau, linux-kernel
On 5/8/20 7:40 AM, Arnd Bergmann wrote:
> CONFIG_DEVICE_PRIVATE cannot be selected in configurations
> without ZONE_DEVICE:
>
> WARNING: unmet direct dependencies detected for DEVICE_PRIVATE
> Depends on [n]: ZONE_DEVICE [=n]
> Selected by [y]:
> - DRM_NOUVEAU_SVM [=y] && HAS_IOMEM [=y] && DRM_NOUVEAU [=y] && MMU [=y] && STAGING [=y]
> kernel/resource.c:1653:28: error: use of undeclared identifier 'PA_SECTION_SHIFT'
> size = ALIGN(size, 1UL << PA_SECTION_SHIFT);
> ^
> kernel/resource.c:1654:48: error: use of undeclared identifier 'MAX_PHYSMEM_BITS'
>
> Add a dependency for Nouveau to avoid broken randconfig builds.
>
> Fixes: d2c63df2242e ("mm/hmm: make CONFIG_DEVICE_PRIVATE into a select")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Randy Dunlap <rdunlap@infradead.org> # build-tested
Thanks.
> ---
> drivers/gpu/drm/nouveau/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/gpu/drm/nouveau/Kconfig b/drivers/gpu/drm/nouveau/Kconfig
> index af5793f3e7c2..996ec5475908 100644
> --- a/drivers/gpu/drm/nouveau/Kconfig
> +++ b/drivers/gpu/drm/nouveau/Kconfig
> @@ -87,6 +87,7 @@ config DRM_NOUVEAU_BACKLIGHT
> config DRM_NOUVEAU_SVM
> bool "(EXPERIMENTAL) Enable SVM (Shared Virtual Memory) support"
> depends on DRM_NOUVEAU
> + depends on ZONE_DEVICE
> depends on MMU
> depends on STAGING
> select DEVICE_PRIVATE
>
--
~Randy
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
@ 2020-05-08 18:05 ` Randy Dunlap
0 siblings, 0 replies; 18+ messages in thread
From: Randy Dunlap @ 2020-05-08 18:05 UTC (permalink / raw)
To: Arnd Bergmann, Ben Skeggs, Jason Gunthorpe
Cc: David Airlie, John Hubbard, Felix Kuehling, linux-kernel,
dri-devel, Jason Gunthorpe, nouveau, Dan Williams, Ira Weiny,
Christoph Hellwig
On 5/8/20 7:40 AM, Arnd Bergmann wrote:
> CONFIG_DEVICE_PRIVATE cannot be selected in configurations
> without ZONE_DEVICE:
>
> WARNING: unmet direct dependencies detected for DEVICE_PRIVATE
> Depends on [n]: ZONE_DEVICE [=n]
> Selected by [y]:
> - DRM_NOUVEAU_SVM [=y] && HAS_IOMEM [=y] && DRM_NOUVEAU [=y] && MMU [=y] && STAGING [=y]
> kernel/resource.c:1653:28: error: use of undeclared identifier 'PA_SECTION_SHIFT'
> size = ALIGN(size, 1UL << PA_SECTION_SHIFT);
> ^
> kernel/resource.c:1654:48: error: use of undeclared identifier 'MAX_PHYSMEM_BITS'
>
> Add a dependency for Nouveau to avoid broken randconfig builds.
>
> Fixes: d2c63df2242e ("mm/hmm: make CONFIG_DEVICE_PRIVATE into a select")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Randy Dunlap <rdunlap@infradead.org> # build-tested
Thanks.
> ---
> drivers/gpu/drm/nouveau/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/gpu/drm/nouveau/Kconfig b/drivers/gpu/drm/nouveau/Kconfig
> index af5793f3e7c2..996ec5475908 100644
> --- a/drivers/gpu/drm/nouveau/Kconfig
> +++ b/drivers/gpu/drm/nouveau/Kconfig
> @@ -87,6 +87,7 @@ config DRM_NOUVEAU_BACKLIGHT
> config DRM_NOUVEAU_SVM
> bool "(EXPERIMENTAL) Enable SVM (Shared Virtual Memory) support"
> depends on DRM_NOUVEAU
> + depends on ZONE_DEVICE
> depends on MMU
> depends on STAGING
> select DEVICE_PRIVATE
>
--
~Randy
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 1/2] HMM: test: fix CONFIG_DEVICE_PRIVATE dependencies
2020-05-08 14:40 [PATCH 1/2] HMM: test: fix CONFIG_DEVICE_PRIVATE dependencies Arnd Bergmann
2020-05-08 14:40 ` Arnd Bergmann
2020-05-08 17:00 ` [PATCH 1/2] HMM: test: fix CONFIG_DEVICE_PRIVATE dependencies Ralph Campbell
@ 2020-05-08 18:05 ` Randy Dunlap
2 siblings, 0 replies; 18+ messages in thread
From: Randy Dunlap @ 2020-05-08 18:05 UTC (permalink / raw)
To: Arnd Bergmann, Jason Gunthorpe, Ralph Campbell, Jérôme Glisse
Cc: Jason Gunthorpe, Andrew Morton, Masahiro Yamada, Changbin Du,
Stephen Rothwell, Anshuman Khandual, Krzysztof Kozlowski,
linux-kernel
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 <arnd@arndb.de>
Acked-by: Randy Dunlap <rdunlap@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
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
@ 2020-05-08 19:04 ` Jason Gunthorpe
0 siblings, 0 replies; 18+ messages in thread
From: Jason Gunthorpe @ 2020-05-08 19:04 UTC (permalink / raw)
To: Arnd Bergmann
Cc: Ben Skeggs, Felix Kuehling, Christoph Hellwig, John Hubbard,
David Airlie, Daniel Vetter, Dan Williams, Ira Weiny, dri-devel,
ML nouveau, linux-kernel
On Fri, May 08, 2020 at 05:05:03PM +0200, Arnd Bergmann wrote:
> On Fri, May 8, 2020 at 5:00 PM Jason Gunthorpe <jgg@mellanox.com> wrote:
> >
> > On Fri, May 08, 2020 at 04:40:09PM +0200, Arnd Bergmann wrote:
> > > CONFIG_DEVICE_PRIVATE cannot be selected in configurations
> > > without ZONE_DEVICE:
> >
> > It is kind of unfortunate to lift dependencies from DEVICE_PRIVATE
> > into the users, is this really how kconfig is supposed to work or is
> > something else wrong here?
>
> Usually the problem is trying to use 'select' for something that can
> be done with 'depends on'. I have actually no idea what
> CONFIG_DEVICE_PRIVATE does, as it lacks a help text
> and is a rather generic term.
It is a sub mode of ZONE_DEVICE, ie DEVICE_PRIVATE turns on a certain
kind of ZONE_DEVICE page.
Both ZONE_DEVICE and DEVICE_PRIVATE are APIs families drivers use,
there is no reason for a user to select either of these directly.
Jason
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
@ 2020-05-08 19:04 ` Jason Gunthorpe
0 siblings, 0 replies; 18+ messages in thread
From: Jason Gunthorpe @ 2020-05-08 19:04 UTC (permalink / raw)
To: Arnd Bergmann
Cc: David Airlie, Felix Kuehling,
linux-kernel-u79uwXL29TY76Z2rM5mHXA, dri-devel, Ben Skeggs,
Daniel Vetter, ML nouveau, Dan Williams, Ira Weiny,
Christoph Hellwig
On Fri, May 08, 2020 at 05:05:03PM +0200, Arnd Bergmann wrote:
> On Fri, May 8, 2020 at 5:00 PM Jason Gunthorpe <jgg-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org> wrote:
> >
> > On Fri, May 08, 2020 at 04:40:09PM +0200, Arnd Bergmann wrote:
> > > CONFIG_DEVICE_PRIVATE cannot be selected in configurations
> > > without ZONE_DEVICE:
> >
> > It is kind of unfortunate to lift dependencies from DEVICE_PRIVATE
> > into the users, is this really how kconfig is supposed to work or is
> > something else wrong here?
>
> Usually the problem is trying to use 'select' for something that can
> be done with 'depends on'. I have actually no idea what
> CONFIG_DEVICE_PRIVATE does, as it lacks a help text
> and is a rather generic term.
It is a sub mode of ZONE_DEVICE, ie DEVICE_PRIVATE turns on a certain
kind of ZONE_DEVICE page.
Both ZONE_DEVICE and DEVICE_PRIVATE are APIs families drivers use,
there is no reason for a user to select either of these directly.
Jason
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
@ 2020-05-08 19:04 ` Jason Gunthorpe
0 siblings, 0 replies; 18+ messages in thread
From: Jason Gunthorpe @ 2020-05-08 19:04 UTC (permalink / raw)
To: Arnd Bergmann
Cc: David Airlie, John Hubbard, Felix Kuehling, linux-kernel,
dri-devel, Ben Skeggs, ML nouveau, Dan Williams, Ira Weiny,
Christoph Hellwig
On Fri, May 08, 2020 at 05:05:03PM +0200, Arnd Bergmann wrote:
> On Fri, May 8, 2020 at 5:00 PM Jason Gunthorpe <jgg@mellanox.com> wrote:
> >
> > On Fri, May 08, 2020 at 04:40:09PM +0200, Arnd Bergmann wrote:
> > > CONFIG_DEVICE_PRIVATE cannot be selected in configurations
> > > without ZONE_DEVICE:
> >
> > It is kind of unfortunate to lift dependencies from DEVICE_PRIVATE
> > into the users, is this really how kconfig is supposed to work or is
> > something else wrong here?
>
> Usually the problem is trying to use 'select' for something that can
> be done with 'depends on'. I have actually no idea what
> CONFIG_DEVICE_PRIVATE does, as it lacks a help text
> and is a rather generic term.
It is a sub mode of ZONE_DEVICE, ie DEVICE_PRIVATE turns on a certain
kind of ZONE_DEVICE page.
Both ZONE_DEVICE and DEVICE_PRIVATE are APIs families drivers use,
there is no reason for a user to select either of these directly.
Jason
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
2020-05-08 19:04 ` Jason Gunthorpe
@ 2020-05-08 20:39 ` Arnd Bergmann
-1 siblings, 0 replies; 18+ messages in thread
From: Arnd Bergmann @ 2020-05-08 20:39 UTC (permalink / raw)
To: Jason Gunthorpe
Cc: Ben Skeggs, Felix Kuehling, Christoph Hellwig, John Hubbard,
David Airlie, Daniel Vetter, Dan Williams, Ira Weiny, dri-devel,
ML nouveau, linux-kernel
On Fri, May 8, 2020 at 9:04 PM Jason Gunthorpe <jgg@mellanox.com> wrote:
>
> On Fri, May 08, 2020 at 05:05:03PM +0200, Arnd Bergmann wrote:
> > On Fri, May 8, 2020 at 5:00 PM Jason Gunthorpe <jgg@mellanox.com> wrote:
> > >
> > > On Fri, May 08, 2020 at 04:40:09PM +0200, Arnd Bergmann wrote:
> > > > CONFIG_DEVICE_PRIVATE cannot be selected in configurations
> > > > without ZONE_DEVICE:
> > >
> > > It is kind of unfortunate to lift dependencies from DEVICE_PRIVATE
> > > into the users, is this really how kconfig is supposed to work or is
> > > something else wrong here?
> >
> > Usually the problem is trying to use 'select' for something that can
> > be done with 'depends on'. I have actually no idea what
> > CONFIG_DEVICE_PRIVATE does, as it lacks a help text
> > and is a rather generic term.
>
> It is a sub mode of ZONE_DEVICE, ie DEVICE_PRIVATE turns on a certain
> kind of ZONE_DEVICE page.
>
> Both ZONE_DEVICE and DEVICE_PRIVATE are APIs families drivers use,
> there is no reason for a user to select either of these directly.
Ok, then how about making ZONE_DEVICE a hidden symbol and adding
something like
config ZONE_DEVICE_POSSIBLE
def_bool y
depends on MEMORY_HOTPLUG
depends on MEMORY_HOTREMOVE
depends on SPARSEMEM_VMEMMAP
depends on ARCH_HAS_PTE_DEVMAP
then drivers that want it can do
config FOO
tristate "user visible option"
depends on ZONE_DEVICE_POSSIBLE
select ZONE_DEVICE
Arnd
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
@ 2020-05-08 20:39 ` Arnd Bergmann
0 siblings, 0 replies; 18+ messages in thread
From: Arnd Bergmann @ 2020-05-08 20:39 UTC (permalink / raw)
To: Jason Gunthorpe
Cc: David Airlie, John Hubbard, Felix Kuehling, linux-kernel,
dri-devel, Ben Skeggs, ML nouveau, Dan Williams, Ira Weiny,
Christoph Hellwig
On Fri, May 8, 2020 at 9:04 PM Jason Gunthorpe <jgg@mellanox.com> wrote:
>
> On Fri, May 08, 2020 at 05:05:03PM +0200, Arnd Bergmann wrote:
> > On Fri, May 8, 2020 at 5:00 PM Jason Gunthorpe <jgg@mellanox.com> wrote:
> > >
> > > On Fri, May 08, 2020 at 04:40:09PM +0200, Arnd Bergmann wrote:
> > > > CONFIG_DEVICE_PRIVATE cannot be selected in configurations
> > > > without ZONE_DEVICE:
> > >
> > > It is kind of unfortunate to lift dependencies from DEVICE_PRIVATE
> > > into the users, is this really how kconfig is supposed to work or is
> > > something else wrong here?
> >
> > Usually the problem is trying to use 'select' for something that can
> > be done with 'depends on'. I have actually no idea what
> > CONFIG_DEVICE_PRIVATE does, as it lacks a help text
> > and is a rather generic term.
>
> It is a sub mode of ZONE_DEVICE, ie DEVICE_PRIVATE turns on a certain
> kind of ZONE_DEVICE page.
>
> Both ZONE_DEVICE and DEVICE_PRIVATE are APIs families drivers use,
> there is no reason for a user to select either of these directly.
Ok, then how about making ZONE_DEVICE a hidden symbol and adding
something like
config ZONE_DEVICE_POSSIBLE
def_bool y
depends on MEMORY_HOTPLUG
depends on MEMORY_HOTREMOVE
depends on SPARSEMEM_VMEMMAP
depends on ARCH_HAS_PTE_DEVMAP
then drivers that want it can do
config FOO
tristate "user visible option"
depends on ZONE_DEVICE_POSSIBLE
select ZONE_DEVICE
Arnd
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
2020-05-08 14:40 ` Arnd Bergmann
@ 2020-05-11 13:52 ` Jason Gunthorpe
-1 siblings, 0 replies; 18+ messages in thread
From: Jason Gunthorpe @ 2020-05-11 13:52 UTC (permalink / raw)
To: Arnd Bergmann
Cc: Ben Skeggs, Felix Kuehling, Christoph Hellwig, John Hubbard,
David Airlie, Daniel Vetter, Dan Williams, Ira Weiny, dri-devel,
nouveau, linux-kernel
On Fri, May 08, 2020 at 04:40:09PM +0200, Arnd Bergmann wrote:
> CONFIG_DEVICE_PRIVATE cannot be selected in configurations
> without ZONE_DEVICE:
>
> WARNING: unmet direct dependencies detected for DEVICE_PRIVATE
> Depends on [n]: ZONE_DEVICE [=n]
> Selected by [y]:
> - DRM_NOUVEAU_SVM [=y] && HAS_IOMEM [=y] && DRM_NOUVEAU [=y] && MMU [=y] && STAGING [=y]
> kernel/resource.c:1653:28: error: use of undeclared identifier 'PA_SECTION_SHIFT'
> size = ALIGN(size, 1UL << PA_SECTION_SHIFT);
> ^
> kernel/resource.c:1654:48: error: use of undeclared identifier 'MAX_PHYSMEM_BITS'
>
> Add a dependency for Nouveau to avoid broken randconfig builds.
>
> Fixes: d2c63df2242e ("mm/hmm: make CONFIG_DEVICE_PRIVATE into a
> select")
I've reverted the patch this fixes, it seems more trouble than it is
worth.
Thanks,
Jason
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
@ 2020-05-11 13:52 ` Jason Gunthorpe
0 siblings, 0 replies; 18+ messages in thread
From: Jason Gunthorpe @ 2020-05-11 13:52 UTC (permalink / raw)
To: Arnd Bergmann
Cc: David Airlie, John Hubbard, Felix Kuehling, linux-kernel,
dri-devel, Ben Skeggs, nouveau, Dan Williams, Ira Weiny,
Christoph Hellwig
On Fri, May 08, 2020 at 04:40:09PM +0200, Arnd Bergmann wrote:
> CONFIG_DEVICE_PRIVATE cannot be selected in configurations
> without ZONE_DEVICE:
>
> WARNING: unmet direct dependencies detected for DEVICE_PRIVATE
> Depends on [n]: ZONE_DEVICE [=n]
> Selected by [y]:
> - DRM_NOUVEAU_SVM [=y] && HAS_IOMEM [=y] && DRM_NOUVEAU [=y] && MMU [=y] && STAGING [=y]
> kernel/resource.c:1653:28: error: use of undeclared identifier 'PA_SECTION_SHIFT'
> size = ALIGN(size, 1UL << PA_SECTION_SHIFT);
> ^
> kernel/resource.c:1654:48: error: use of undeclared identifier 'MAX_PHYSMEM_BITS'
>
> Add a dependency for Nouveau to avoid broken randconfig builds.
>
> Fixes: d2c63df2242e ("mm/hmm: make CONFIG_DEVICE_PRIVATE into a
> select")
I've reverted the patch this fixes, it seems more trouble than it is
worth.
Thanks,
Jason
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2020-05-11 22:52 UTC | newest]
Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-08 14:40 [PATCH 1/2] HMM: test: fix CONFIG_DEVICE_PRIVATE dependencies Arnd Bergmann
2020-05-08 14:40 ` [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE Arnd Bergmann
2020-05-08 14:40 ` Arnd Bergmann
2020-05-08 15:00 ` Jason Gunthorpe
2020-05-08 15:00 ` Jason Gunthorpe
2020-05-08 15:05 ` Arnd Bergmann
2020-05-08 15:05 ` Arnd Bergmann
2020-05-08 19:04 ` Jason Gunthorpe
2020-05-08 19:04 ` Jason Gunthorpe
2020-05-08 19:04 ` Jason Gunthorpe
2020-05-08 20:39 ` Arnd Bergmann
2020-05-08 20:39 ` Arnd Bergmann
2020-05-08 18:05 ` Randy Dunlap
2020-05-08 18:05 ` Randy Dunlap
2020-05-11 13:52 ` Jason Gunthorpe
2020-05-11 13:52 ` Jason Gunthorpe
2020-05-08 17:00 ` [PATCH 1/2] HMM: test: fix CONFIG_DEVICE_PRIVATE dependencies Ralph Campbell
2020-05-08 18:05 ` Randy Dunlap
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.