Hi
Hardware is HP j6000.
It cannot initialize many PCI devices (sym53c8xx, tulip, STI,
usb(onci)) and cannot boot (no root device).
Messages like this:
sym53c8xx 0:0:0f.0: device not available because of BAR 1 [0xf4005000
- 0xf40053ff] collisions.
On Fri, 2009-06-26 at 12:58 +0400, Alexander Beregalov wrote:
> Hardware is HP j6000.
> It cannot initialize many PCI devices (sym53c8xx, tulip, STI,
> usb(onci)) and cannot boot (no root device).
> Messages like this:
> sym53c8xx 0:0:0f.0: device not available because of BAR 1 [0xf4005000
> - 0xf40053ff] collisions.
This tends to indicate a problem with resource parenting ... could you
post the full boot output? That might indicate why.
James
On Fri, 26 Jun 2009 14:37:40 +0000
James Bottomley <[email protected]> wrote:
> On Fri, 2009-06-26 at 12:58 +0400, Alexander Beregalov wrote:
> > Hardware is HP j6000.
> > It cannot initialize many PCI devices (sym53c8xx, tulip, STI,
> > usb(onci)) and cannot boot (no root device).
> > Messages like this:
> > sym53c8xx 0:0:0f.0: device not available because of BAR 1
> > [0xf4005000
> > - 0xf40053ff] collisions.
>
> This tends to indicate a problem with resource parenting ... could you
> post the full boot output? That might indicate why.
Here goes.
Kind regards,
jer
On Fri, 2009-06-26 at 17:08 +0200, Jeroen Roovers wrote:
> On Fri, 26 Jun 2009 14:37:40 +0000
> James Bottomley <[email protected]> wrote:
>
> > On Fri, 2009-06-26 at 12:58 +0400, Alexander Beregalov wrote:
> > > Hardware is HP j6000.
> > > It cannot initialize many PCI devices (sym53c8xx, tulip, STI,
> > > usb(onci)) and cannot boot (no root device).
> > > Messages like this:
> > > sym53c8xx 0:0:0f.0: device not available because of BAR 1
> > > [0xf4005000
> > > - 0xf40053ff] collisions.
> >
> > This tends to indicate a problem with resource parenting ... could you
> > post the full boot output? That might indicate why.
>
> Here goes.
It looks like there's some sort of screw up in the LBA resource
allocation on 32 bits. The slight problem with this is that I don't
have an LBA 32 bit system to debug this; I've only got a C360.
How recent is the failure? Could you bisect it back to the failing
commit?
Thanks,
James
On Fri, Jun 26, 2009 at 12:58:22PM +0400, Alexander Beregalov wrote:
> Hi
>
> Hardware is HP j6000.
> It cannot initialize many PCI devices (sym53c8xx, tulip, STI,
> usb(onci)) and cannot boot (no root device).
> Messages like this:
> sym53c8xx 0:0:0f.0: device not available because of BAR 1 [0xf4005000
> - 0xf40053ff] collisions.
Yup - I found that out yesterday too. Console output is here:
http://iou.parisc-linux.org/~grundler/console/j6000-2.6.30-parisc_2.6_parenting_failed-01
http://iou.parisc-linux.org/~grundler/console/j6000-2.6.30-parisc_2.6_parenting_failed-02
but in an IRC conversation it' clear I only dumped the "elmmio" and not
the regular "lmmio" resource request. Need to dump both.
I'm pretty sure this is a problem of the root bus resources not getting
setup correctly. I'm not clear on what's wrong. jejb and willy are looking
at it now as well.
thanks,
grant
On Fri, Jun 26, 2009 at 11:03:04AM -0600, Grant Grundler wrote:
> On Fri, Jun 26, 2009 at 12:58:22PM +0400, Alexander Beregalov wrote:
> > Hi
> >
> > Hardware is HP j6000.
> > It cannot initialize many PCI devices (sym53c8xx, tulip, STI,
> > usb(onci)) and cannot boot (no root device).
> > Messages like this:
> > sym53c8xx 0:0:0f.0: device not available because of BAR 1 [0xf4005000
> > - 0xf40053ff] collisions.
>
> I'm pretty sure this is a problem of the root bus resources not getting
> setup correctly. I'm not clear on what's wrong. jejb and willy are looking
> at it now as well.
This patch fixes it for me.
----
Fix PCI resource allocation on non-PAT SBA machines
We weren't marking the resources as memory resources, so they weren't
being found by pci_claim_resource().
Signed-off-by: Matthew Wilcox <[email protected]>
Reviewed-by: Grant Grundler <[email protected]>
diff --git a/drivers/parisc/sba_iommu.c b/drivers/parisc/sba_iommu.c
index d46dd57..123d8fe 100644
--- a/drivers/parisc/sba_iommu.c
+++ b/drivers/parisc/sba_iommu.c
@@ -2057,6 +2057,7 @@ void sba_directed_lmmio(struct parisc_device *pci_hba, struct resource *r)
r->start = (base & ~1UL) | PCI_F_EXTEND;
size = ~ READ_REG32(reg + LMMIO_DIRECT0_MASK);
r->end = r->start + size;
+ r->flags = IORESOURCE_MEM;
}
}
@@ -2093,4 +2094,5 @@ void sba_distributed_lmmio(struct parisc_device *pci_hba, struct resource *r )
size = (~READ_REG32(sba->sba_hpa + LMMIO_DIST_MASK)) / ROPES_PER_IOC;
r->start += rope * (size + 1); /* adjust base for this rope */
r->end = r->start + size;
+ r->flags = IORESOURCE_MEM;
}
--
Matthew Wilcox Intel Open Source Technology Centre
"Bill, look, we understand that you're interested in selling us this
operating system, but compare it to ours. We can't possibly take such
a retrograde step."
On Fri, Jun 26, 2009 at 11:44:18AM -0600, Matthew Wilcox wrote:
> > > Hardware is HP j6000.
> > > It cannot initialize many PCI devices (sym53c8xx, tulip, STI,
> > > usb(onci)) and cannot boot (no root device).
> > > Messages like this:
> > > sym53c8xx 0:0:0f.0: device not available because of BAR 1 [0xf4005000
> > > - 0xf40053ff] collisions.
> >
> > I'm pretty sure this is a problem of the root bus resources not getting
> > setup correctly. I'm not clear on what's wrong. jejb and willy are looking
> > at it now as well.
>
> This patch fixes it for me.
>
obviously correct, applied and pushed out.
thanks, kyle