Re: [PATCH 1/1] PCI: Convert pdev_sort_resources() to use resource name helper
From: Ilpo Järvinen
Date: Wed Oct 16 2024 - 09:35:08 EST
On Wed, 16 Oct 2024, Philipp Stanner wrote:
> On Wed, 2024-10-16 at 16:15 +0300, Ilpo Järvinen wrote:
> > On Wed, 16 Oct 2024, Philipp Stanner wrote:
> >
> > > On Wed, 2024-10-16 at 15:00 +0300, Ilpo Järvinen wrote:
> > > > Use pci_resource_name() helper in pdev_sort_resources() to print
> > > > resources in user-friendly format.
> > > >
> > > > Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@xxxxxxxxxxxxxxx>
> > > > ---
> > > > drivers/pci/setup-bus.c | 5 +++--
> > > > 1 file changed, 3 insertions(+), 2 deletions(-)
> > > >
> > > > diff --git a/drivers/pci/setup-bus.c b/drivers/pci/setup-bus.c
> > > > index 23082bc0ca37..071c5436b4a5 100644
> > > > --- a/drivers/pci/setup-bus.c
> > > > +++ b/drivers/pci/setup-bus.c
> > > > @@ -134,6 +134,7 @@ static void pdev_sort_resources(struct
> > > > pci_dev
> > > > *dev, struct list_head *head)
> > > > int i;
> > > >
> > > > pci_dev_for_each_resource(dev, r, i) {
> > > > + const char *r_name = pci_resource_name(dev, i);
> > > > struct pci_dev_resource *dev_res, *tmp;
> > > > resource_size_t r_align;
> > > > struct list_head *n;
> > > > @@ -146,8 +147,8 @@ static void pdev_sort_resources(struct
> > > > pci_dev
> > > > *dev, struct list_head *head)
> > > >
> > > > r_align = pci_resource_alignment(dev, r);
> > > > if (!r_align) {
> > > > - pci_warn(dev, "BAR %d: %pR has bogus
> > > > alignment\n",
> > > > - i, r);
> > > > + pci_warn(dev, "%s: %pR has bogus
> > > > alignment\n",
> > > > + r_name, r);
> > >
> > > Why do you remove the BAR index number, don't you think this
> > > information is also useful?
> >
> > That's because of how pci_resource_name() works. The number will be
> > included in the returned string and it won't be always same as i.
> > So that change is done on purpose.
> >
> > > One could also consider printing r_align, would that be useful?
> >
> > As per the preceeding condition, it's known to be zero so it's not
> > that useful for any developer looking at these code lines.
>
> Ah, right. Would it then make sense then to do:
>
> pci_warn(dev, "%s: %pR: Alignment must not be zero.\n", ...);
>
> Would tell then exactly what the problem is. Unless the devs know that
> a bogus alignment is definitely always 0.
>
> ?
While I personally don't need that given the surrounding code, I can
change the string to be more precise. Thanks.
--
i.