Re: [PATCH] ACPI: video: Fix name collision with architecture's video.o

From: Rafael J. Wysocki
Date: Thu May 16 2024 - 09:04:54 EST


CC Hans who has been doing the majority of the ACPI video work.

On Thu, May 16, 2024 at 2:43 PM Thomas Zimmermann <tzimmermann@susede> wrote:
>
> Commit 2fd001cd3600 ("arch: Rename fbdev header and source files")
> renames the video source files under arch/ such that they does not
> refer to fbdev any longer. The new files named video.o conflict with
> ACPI's video.ko module.

And surely nobody knew or was unable to check upfront that there was a
video.ko already in the kernel.

> Modprobing the ACPI module can then fail with warnings about missing symbols, as shown below.
>
> (i915_selftest:1107) igt_kmod-WARNING: i915: Unknown symbol acpi_video_unregister (err -2)
> (i915_selftest:1107) igt_kmod-WARNING: i915: Unknown symbol acpi_video_register_backlight (err -2)
> (i915_selftest:1107) igt_kmod-WARNING: i915: Unknown symbol __acpi_video_get_backlight_type (err -2)
> (i915_selftest:1107) igt_kmod-WARNING: i915: Unknown symbol acpi_video_register (err -2)
>
> Fix this problem by renaming ACPI's video.ko to acpi_video.ko. Also
> rename a related source file and clean up the Makefile.

If you insist on renaming, rename it to backlight.c (and
backlight_detect.c for consistency), because that's what it really is
about.

> Reported-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@xxxxxxxxx>
> Closes: https://lore.kernel.org/intel-gfx/9dcac6e9-a3bf-4ace-bbdc-f697f767f9e0@xxxxxxx/T/#t
> Tested-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@xxxxxxxxx>
> Signed-off-by: Thomas Zimmermann <tzimmermann@xxxxxxx>
> Fixes: 2fd001cd3600 ("arch: Rename fbdev header and source files")
> Cc: Arnd Bergmann <arnd@xxxxxxxx>
> Cc: linux-arch@xxxxxxxxxxxxxxx
> Cc: linux-fbdev@xxxxxxxxxxxxxxx
> Cc: dri-devel@xxxxxxxxxxxxxxxxxxxxx
> ---
> drivers/acpi/Makefile | 5 +++--
> drivers/acpi/{acpi_video.c => acpi_video_core.c} | 2 +-
> 2 files changed, 4 insertions(+), 3 deletions(-)
> rename drivers/acpi/{acpi_video.c => acpi_video_core.c} (99%)
>
> diff --git a/drivers/acpi/Makefile b/drivers/acpi/Makefile
> index 8cc8c0d9c8732..fc9e11f7afbf7 100644
> --- a/drivers/acpi/Makefile
> +++ b/drivers/acpi/Makefile
> @@ -84,7 +84,9 @@ obj-$(CONFIG_ACPI_FAN) += fan.o
> fan-objs := fan_core.o
> fan-objs += fan_attr.o
>
> -obj-$(CONFIG_ACPI_VIDEO) += video.o
> +obj-$(CONFIG_ACPI_VIDEO) += acpi_video.o
> +acpi_video-objs += acpi_video_core.o video_detect.o
> +
> obj-$(CONFIG_ACPI_TAD) += acpi_tad.o
> obj-$(CONFIG_ACPI_PCI_SLOT) += pci_slot.o
> obj-$(CONFIG_ACPI_PROCESSOR) += processor.o
> @@ -124,7 +126,6 @@ obj-$(CONFIG_ACPI_CONFIGFS) += acpi_configfs.o
>
> obj-y += pmic/
>
> -video-objs += acpi_video.o video_detect.o
> obj-y += dptf/
>
> obj-$(CONFIG_ARM64) += arm64/
> diff --git a/drivers/acpi/acpi_video.c b/drivers/acpi/acpi_video_core.c
> similarity index 99%
> rename from drivers/acpi/acpi_video.c
> rename to drivers/acpi/acpi_video_core.c
> index 1fda303882973..32bf81c5773a4 100644
> --- a/drivers/acpi/acpi_video.c
> +++ b/drivers/acpi/acpi_video_core.c
> @@ -1,6 +1,6 @@
> // SPDX-License-Identifier: GPL-2.0-or-later
> /*
> - * video.c - ACPI Video Driver
> + * acpi_video_core.c - ACPI Video Driver
> *
> * Copyright (C) 2004 Luming Yu <luming.yu@xxxxxxxxx>
> * Copyright (C) 2004 Bruno Ducrot <ducrot@xxxxxxxxxxxx>
> --
> 2.45.0
>
>