Arnd Bergmann
2020-May-08 14:40 UTC
[Nouveau] [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
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 at 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
Jason Gunthorpe
2020-May-08 15:00 UTC
[Nouveau] [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
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
Arnd Bergmann
2020-May-08 15:05 UTC
[Nouveau] [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
On Fri, May 8, 2020 at 5:00 PM Jason Gunthorpe <jgg at 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
Randy Dunlap
2020-May-08 18:05 UTC
[Nouveau] [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
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 at arndb.de>Acked-by: Randy Dunlap <rdunlap at 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
Jason Gunthorpe
2020-May-11 13:52 UTC
[Nouveau] [PATCH 2/2] nouveau: fix dependencies for DEVICE_PRIVATE
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