diff mbox

powerpc/powernv: Fix M64 resource name in /proc/iomem

Message ID 1445475788-30348-1-git-send-email-gwshan@linux.vnet.ibm.com (mailing list archive)
State Accepted
Headers show

Commit Message

Gavin Shan Oct. 22, 2015, 1:03 a.m. UTC
The name of PCI root bus's M64 resource isn't initialized properly.
When dumping "/proc/iomem", "<BAD>" is seen for those M64 resources
on PCI root buses.

   ~# cat /proc/iomem | grep -e "BAD"
   3b0000000000-3b0fefffffff : <BAD>
   3b1000000000-3b1fefffffff : <BAD>
   3c0000000000-3c0fefffffff : <BAD>
   3c1000000000-3c1fefffffff : <BAD>
   3c2000000000-3c2fefffffff : <BAD>

This fixes the issue by setting the name of PCI root bus's M64
resource to that of PHB's device node full name. With the patch,
no "<BAD>" is seen from "/proc/iomem".

Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
---
 arch/powerpc/platforms/powernv/pci-ioda.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Michael Ellerman Dec. 17, 2015, 11:57 a.m. UTC | #1
On Thu, 2015-22-10 at 01:03:08 UTC, Gavin Shan wrote:
> The name of PCI root bus's M64 resource isn't initialized properly.
> When dumping "/proc/iomem", "<BAD>" is seen for those M64 resources
> on PCI root buses.
> 
>    ~# cat /proc/iomem | grep -e "BAD"
>    3b0000000000-3b0fefffffff : <BAD>
>    3b1000000000-3b1fefffffff : <BAD>
>    3c0000000000-3c0fefffffff : <BAD>
>    3c1000000000-3c1fefffffff : <BAD>
>    3c2000000000-3c2fefffffff : <BAD>
> 
> This fixes the issue by setting the name of PCI root bus's M64
> resource to that of PHB's device node full name. With the patch,
> no "<BAD>" is seen from "/proc/iomem".
> 
> Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>

Applied to powerpc next, thanks.

https://git.kernel.org/powerpc/c/e80c4e7ca5aed7d2fa766191bc

cheers
diff mbox

Patch

diff --git a/arch/powerpc/platforms/powernv/pci-ioda.c b/arch/powerpc/platforms/powernv/pci-ioda.c
index 414fd1a..3b726aa 100644
--- a/arch/powerpc/platforms/powernv/pci-ioda.c
+++ b/arch/powerpc/platforms/powernv/pci-ioda.c
@@ -357,6 +357,7 @@  static void __init pnv_ioda_parse_m64_window(struct pnv_phb *phb)
 	}
 
 	res = &hose->mem_resources[1];
+	res->name = dn->full_name;
 	res->start = of_translate_address(dn, r + 2);
 	res->end = res->start + of_read_number(r + 4, 2) - 1;
 	res->flags = (IORESOURCE_MEM | IORESOURCE_MEM_64 | IORESOURCE_PREFETCH);