Re: [PATCH] ACPI: video: Fix name collision with architecture's video.o
Hi, On 5/16/24 5:11 PM, Thomas Zimmermann wrote: > Hi > > Am 16.05.24 um 17:03 schrieb Hans de Goede: >> Hi, >> >> On 5/16/24 3:04 PM, Rafael J. Wysocki wrote: >>> CC Hans who has been doing the majority of the ACPI video work. >>> >>> On Thu, May 16, 2024 at 2:43 PM Thomas Zimmermann >>> 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. >> Sorry, but nack for this change. I very deliberately kept the module-name >> as video when renaming the actual .c file from video.c to acpi_video.c >> because many people pass drivers/video/acpi_video.c module arguments >> on the kernel commandline using video.param=val . >> >> Try e.g. doing a duckduckgo search for 1 off: >> >> "video.only_lcd" >> "video.allow_duplicates" >> "video.brightness_switch_enabled" > > Ok, that makes sense. I'll rename the other files. Great, thank you. Regards, Hans
Re: [PATCH] ACPI: video: Fix name collision with architecture's video.o
Hi Am 16.05.24 um 17:03 schrieb Hans de Goede: Hi, On 5/16/24 3:04 PM, Rafael J. Wysocki wrote: CC Hans who has been doing the majority of the ACPI video work. On Thu, May 16, 2024 at 2:43 PM Thomas Zimmermann 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. Sorry, but nack for this change. I very deliberately kept the module-name as video when renaming the actual .c file from video.c to acpi_video.c because many people pass drivers/video/acpi_video.c module arguments on the kernel commandline using video.param=val . Try e.g. doing a duckduckgo search for 1 off: "video.only_lcd" "video.allow_duplicates" "video.brightness_switch_enabled" Ok, that makes sense. I'll rename the other files. Best regards Thomas And you will find a lot of hits. The last one is even documented as being "video.brightness_switch_enabled" in the main kernel-parameters.txt as well as separately: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/admin-guide/kernel-parameters.txt#n39 https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/admin-guide/kernel-parameters.txt#n7152 https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/firmware-guide/acpi/video_extension.rst#n118 https://wiki.archlinux.org/title/Lenovo_ThinkPad_X1_Carbon#Brightness_control If you rename this module then peoples config will break for a whole lot of users. So lets not do that and lets rename the new module which is causing the conflict in the first place instead. Regards, Hans -- -- Thomas Zimmermann Graphics Driver Developer SUSE Software Solutions Germany GmbH Frankenstrasse 146, 90461 Nuernberg, Germany GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman HRB 36809 (AG Nuernberg)
Re: [PATCH] ACPI: video: Fix name collision with architecture's video.o
Hi, On 5/16/24 3:04 PM, Rafael J. Wysocki wrote: > CC Hans who has been doing the majority of the ACPI video work. > > On Thu, May 16, 2024 at 2:43 PM Thomas Zimmermann 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. Sorry, but nack for this change. I very deliberately kept the module-name as video when renaming the actual .c file from video.c to acpi_video.c because many people pass drivers/video/acpi_video.c module arguments on the kernel commandline using video.param=val . Try e.g. doing a duckduckgo search for 1 off: "video.only_lcd" "video.allow_duplicates" "video.brightness_switch_enabled" And you will find a lot of hits. The last one is even documented as being "video.brightness_switch_enabled" in the main kernel-parameters.txt as well as separately: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/admin-guide/kernel-parameters.txt#n39 https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/admin-guide/kernel-parameters.txt#n7152 https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/firmware-guide/acpi/video_extension.rst#n118 https://wiki.archlinux.org/title/Lenovo_ThinkPad_X1_Carbon#Brightness_control If you rename this module then peoples config will break for a whole lot of users. So lets not do that and lets rename the new module which is causing the conflict in the first place instead. Regards, Hans
Re: [PATCH] ACPI: video: Fix name collision with architecture's video.o
CC Hans who has been doing the majority of the ACPI video work. On Thu, May 16, 2024 at 2:43 PM Thomas Zimmermann 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 > Closes: > https://lore.kernel.org/intel-gfx/9dcac6e9-a3bf-4ace-bbdc-f697f767f...@suse.de/T/#t > Tested-by: Chaitanya Kumar Borah > Signed-off-by: Thomas Zimmermann > Fixes: 2fd001cd3600 ("arch: Rename fbdev header and source files") > Cc: Arnd Bergmann > Cc: linux-a...@vger.kernel.org > Cc: linux-fb...@vger.kernel.org > Cc: dri-devel@lists.freedesktop.org > --- > 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 > * Copyright (C) 2004 Bruno Ducrot > -- > 2.45.0 > >
[PATCH] ACPI: video: Fix name collision with architecture's video.o
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. 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. Reported-by: Chaitanya Kumar Borah Closes: https://lore.kernel.org/intel-gfx/9dcac6e9-a3bf-4ace-bbdc-f697f767f...@suse.de/T/#t Tested-by: Chaitanya Kumar Borah Signed-off-by: Thomas Zimmermann Fixes: 2fd001cd3600 ("arch: Rename fbdev header and source files") Cc: Arnd Bergmann Cc: linux-a...@vger.kernel.org Cc: linux-fb...@vger.kernel.org Cc: dri-devel@lists.freedesktop.org --- 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 * Copyright (C) 2004 Bruno Ducrot -- 2.45.0