Re: [PATCH 04/11] drm/panel: merge the drm_kms_helper module into the drm module

[email protected]
Newsgroups org.freedesktop.lists.dri-devel
Message-ID <[email protected]>
Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
- [Low] The use of `:=` instead of `+=` for `drm-$(CONFIG_DRM_KMS_HELPER)` overwrites the previously defined `drm-y` list, causing all core DRM objects to be excluded from the build.
- [Low] Merging `drm_kms_helper` into the `drm` module breaks the build or module loading when `CONFIG_DRM=y` and `CONFIG_DRM_KMS_HELPER=m` because Kbuild ignores `drm-m` for built-in objects.
--

--- Patch [4]: [PATCH 04/11] drm/panel: merge the drm_kms_helper module into the drm module ---
commit d831428a6450fb748ee21e10b4e68b33d57ee2c3
Author: Luca Ceresoli <[email protected]>

drm/panel: merge the drm_kms_helper module into the drm module

Work is in progress to make every drm_panel automatically create a panel_bridge,
which requires calling drm_panel_bridge APIs. This would create a circular
dependency loop on modular builds. This commit attempts to move the entire
drm_kms_helper into the drm module to resolve the dependency loop.

Link: https://lore.kernel.org/all/emuj2innmp6zmzd7pyakqzjqpdzhly6qfhakya3ydwmd63pl26@5jwxaidpikjw/
Link: https://lore.kernel.org/lkml/[email protected]/

> diff --git a/drivers/gpu/drm/Makefile b/drivers/gpu/drm/Makefile
> --- a/drivers/gpu/drm/Makefile
> +++ b/drivers/gpu/drm/Makefile
> @@ -139,7 +139,7 @@ obj-$(CONFIG_DRM_TTM_HELPER) += drm_ttm_helper.o
>  # Modesetting helpers
>  #
>  
> -drm_kms_helper-y := \
> +drm-$(CONFIG_DRM_KMS_HELPER) := \

[Severity: Low]
Does this `:=` assignment overwrite the core DRM objects defined earlier in
the Makefile? If `CONFIG_DRM_KMS_HELPER=y`, this evaluates to `drm-y :=`,
replacing the previously built list for `drm-y`. This would cause the core
DRM files to be dropped from the build.

[Severity: Low]
What happens to the build if `CONFIG_DRM=y` and `CONFIG_DRM_KMS_HELPER=m`?

In this configuration, the objects are appended to `drm-m`. Since the
parent object is built-in (`obj-y += drm.o`), Kbuild ignores the `drm-m`
list entirely. Could this cause the KMS helpers to be silently omitted
from compilation, leading to unresolved symbols in modular drivers that
depend on them?

>  	drm_atomic_helper.o \
>  	drm_atomic_state_helper.o \

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/[email protected]?part=4
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.