[+cc Alex, FYI] On Thu, Jun 03, 2021 at 12:01:11AM +0000, Krzysztof Wilczyński wrote: > Only expose the value of the "driver_override" variable through the > corresponding sysfs object when a value is actually set. This changes the attribute contents from "(null)" to an empty (zero-length) file when no driver override has been set. There are a few other driver_override_show() functions. Most don't check the pointer so they'll show "(null)". One (spi.c) checks and shows an empty string ("", file containing a single NULL character) instead of an empty (zero-length) file. > Signed-off-by: Krzysztof Wilczyński <kw@xxxxxxxxx> > Reviewed-by: Logan Gunthorpe <logang@xxxxxxxxxxxx> > --- > drivers/pci/pci-sysfs.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/pci/pci-sysfs.c b/drivers/pci/pci-sysfs.c > index 5d63df7c1820..4e9f582ca10f 100644 > --- a/drivers/pci/pci-sysfs.c > +++ b/drivers/pci/pci-sysfs.c > @@ -580,10 +580,11 @@ static ssize_t driver_override_show(struct device *dev, > struct device_attribute *attr, char *buf) > { > struct pci_dev *pdev = to_pci_dev(dev); > - ssize_t len; > + ssize_t len = 0; > > device_lock(dev); > - len = sysfs_emit(buf, "%s\n", pdev->driver_override); > + if (pdev->driver_override) > + len = sysfs_emit(buf, "%s\n", pdev->driver_override); > device_unlock(dev); > return len; > } > -- > 2.31.1 >