Follow the rule taken in commit 35bd8c07db2c
("devres: keep both device name and resource name in pretty name")
and keep both device and resource names while requesting memory
regions for PCI config space to prettify e.g. /proc/iomem output:
Before (DWC Host Controller):
18b00000-18b01fff : dbi
18b10000-18b11fff : config
18b20000-18b21fff : dbi
18b30000-18b31fff : config
19000000-19ffffff : pci@18b00000
19000000-190fffff : PCI Bus 0000:01
19000000-1900ffff : 0000:01:00.0
19100000-191fffff : PCI Bus 0000:01
1a000000-1affffff : pci@18b20000
1a000000-1a0fffff : PCI Bus 0001:01
1a000000-1a00ffff : 0001:01:00.0
1a100000-1a1fffff : PCI Bus 0001:01
After:
18b00000-18b01fff : 18b00000.pci dbi
18b10000-18b11fff : 18b00000.pci config
18b20000-18b21fff : 18b20000.pci dbi
18b30000-18b31fff : 18b20000.pci config
19000000-19ffffff : pci@18b00000
19000000-190fffff : PCI Bus 0000:01
19000000-1900ffff : 0000:01:00.0
19100000-191fffff : PCI Bus 0000:01
1a000000-1affffff : pci@18b20000
1a000000-1a0fffff : PCI Bus 0001:01
1a000000-1a00ffff : 0001:01:00.0
1a100000-1a1fffff : PCI Bus 0001:01
Signed-off-by: Alexander Lobakin <[email protected]>
---
drivers/pci/pci.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
index e578d34095e9..0716691f7d14 100644
--- a/drivers/pci/pci.c
+++ b/drivers/pci/pci.c
@@ -4188,7 +4188,14 @@ void __iomem *devm_pci_remap_cfg_resource(struct device *dev,
}
size = resource_size(res);
- name = res->name ?: dev_name(dev);
+
+ if (res->name)
+ name = devm_kasprintf(dev, GFP_KERNEL, "%s %s", dev_name(dev),
+ res->name);
+ else
+ name = devm_kstrdup(dev, dev_name(dev), GFP_KERNEL);
+ if (!name)
+ return IOMEM_ERR_PTR(-ENOMEM);
if (!devm_request_mem_region(dev, res->start, size, name)) {
dev_err(dev, "can't request region for resource %pR\n", res);
--
2.29.2
Please look at the git history and follow the subject line convention.
On Thu, Nov 19, 2020 at 07:04:42PM +0000, Alexander Lobakin wrote:
> Follow the rule taken in commit 35bd8c07db2c
> ("devres: keep both device name and resource name in pretty name")
> and keep both device and resource names while requesting memory
> regions for PCI config space to prettify e.g. /proc/iomem output:
>
> Before (DWC Host Controller):
>
> 18b00000-18b01fff : dbi
> 18b10000-18b11fff : config
> 18b20000-18b21fff : dbi
> 18b30000-18b31fff : config
> 19000000-19ffffff : pci@18b00000
> 19000000-190fffff : PCI Bus 0000:01
> 19000000-1900ffff : 0000:01:00.0
> 19100000-191fffff : PCI Bus 0000:01
> 1a000000-1affffff : pci@18b20000
> 1a000000-1a0fffff : PCI Bus 0001:01
> 1a000000-1a00ffff : 0001:01:00.0
> 1a100000-1a1fffff : PCI Bus 0001:01
>
> After:
>
> 18b00000-18b01fff : 18b00000.pci dbi
> 18b10000-18b11fff : 18b00000.pci config
> 18b20000-18b21fff : 18b20000.pci dbi
> 18b30000-18b31fff : 18b20000.pci config
Makes sense. I would remove the rest of this output from the commit
log since it isn't relevant and doesn't change.
> 19000000-19ffffff : pci@18b00000
> 19000000-190fffff : PCI Bus 0000:01
> 19000000-1900ffff : 0000:01:00.0
> 19100000-191fffff : PCI Bus 0000:01
> 1a000000-1affffff : pci@18b20000
> 1a000000-1a0fffff : PCI Bus 0001:01
> 1a000000-1a00ffff : 0001:01:00.0
> 1a100000-1a1fffff : PCI Bus 0001:01
>
> Signed-off-by: Alexander Lobakin <[email protected]>
> ---
> drivers/pci/pci.c | 9 ++++++++-
> 1 file changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
> index e578d34095e9..0716691f7d14 100644
> --- a/drivers/pci/pci.c
> +++ b/drivers/pci/pci.c
> @@ -4188,7 +4188,14 @@ void __iomem *devm_pci_remap_cfg_resource(struct device *dev,
> }
>
> size = resource_size(res);
> - name = res->name ?: dev_name(dev);
> +
> + if (res->name)
> + name = devm_kasprintf(dev, GFP_KERNEL, "%s %s", dev_name(dev),
> + res->name);
> + else
> + name = devm_kstrdup(dev, dev_name(dev), GFP_KERNEL);
> + if (!name)
> + return IOMEM_ERR_PTR(-ENOMEM);
>
> if (!devm_request_mem_region(dev, res->start, size, name)) {
> dev_err(dev, "can't request region for resource %pR\n", res);
> --
> 2.29.2
>
>