[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <639fffd3-a251-4454-94a4-602fdaf481ae@amd.com>
Date: Mon, 21 Jul 2025 21:05:19 +0000
From: "Limonciello, Mario" <Mario.Limonciello@....com>
To: Randy Dunlap <rdunlap@...radead.org>, "linux-kernel@...r.kernel.org"
<linux-kernel@...r.kernel.org>
CC: Bjorn Helgaas <bhelgaas@...gle.com>, "linux-pci@...r.kernel.org"
<linux-pci@...r.kernel.org>, Stephen Rothwell <sfr@...b.auug.org.au>
Subject: Re: [PATCH] PCI/sysfs: hide boot_display definition when VIDEO=n
On 7/21/25 4:02 PM, Randy Dunlap wrote:
> When CONFIG_VIDEO is not set, defining the 'boot_display' attribute
> causes build errors/warnings, so hide the declaration as is done with
> other code that uses this variable. Bracket unused code inside
> #ifdef CONFIG_VIDEO/#endif to prevent other build warnings/errors.
>
> include/linux/device.h:199:33: warning: 'dev_attr_boot_display' defined but not used [-Wunused-variable]
> 199 | struct device_attribute dev_attr_##_name = __ATTR_RO(_name)
> drivers/pci/pci-sysfs.c:688:8: note: in expansion of macro 'DEVICE_ATTR_RO'
> 688 | static DEVICE_ATTR_RO(boot_display);
>
> drivers/pci/pci-sysfs.c:683:16: warning: ‘boot_display_show’ defined but not used [-Wunused-function]
> 683 | static ssize_t boot_display_show(struct device *dev,
> | ^~~~~~~~~~~~~~~~~
>
> Fixes: c4f2dc1e5293c ("PCI: Add a new 'boot_display' attribute")
> Signed-off-by: Randy Dunlap <rdunlap@...radead.org>
Hi Randy,
Thanks for the patch. Stephen raised this last week too and it's
brought up some other interesting topics as part of fixing it.
I have two other approaches on the mailing list right now waiting for
review.
1) Make a static sysfs file.
https://lore.kernel.org/linux-pci/20250721023818.2410062-1-superm1@kernel.org/T/#u
2) Move out of PCI into DRM.
https://lore.kernel.org/linux-pci/20250721185726.1264909-1-superm1@kernel.org/T/#me4356b3a172cbdafe83393bedce10f17a86e0da7
Thanks,
> ---
> Cc: Mario Limonciello <mario.limonciello@....com>
> Cc: Bjorn Helgaas <bhelgaas@...gle.com>
> Cc: linux-pci@...r.kernel.org
>
> Also, a question:
> What does this do in pci-sysfs.c?
> #ifndef ARCH_PCI_DEV_GROUPS
> #define ARCH_PCI_DEV_GROUPS
> #endif
> Is there some hidden macro (probably using string concatenation)
> that uses this define value? Thanks.
>
> drivers/pci/pci-sysfs.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> --- linux-next-20250721.orig/drivers/pci/pci-sysfs.c
> +++ linux-next-20250721/drivers/pci/pci-sysfs.c
> @@ -680,12 +680,15 @@ const struct attribute_group *pcibus_gro
> NULL,
> };
>
> +#ifdef CONFIG_VIDEO
> static ssize_t boot_display_show(struct device *dev,
> struct device_attribute *attr, char *buf)
> {
> return sysfs_emit(buf, "1\n");
> }
> +
> static DEVICE_ATTR_RO(boot_display);
> +#endif
>
> static ssize_t boot_vga_show(struct device *dev, struct device_attribute *attr,
> char *buf)
Powered by blists - more mailing lists