[openib-general] Mstflint - not working on ppc64 and when driver is not loaded on AMD

Tseng-Hui (Frank) Lin thlin at us.ibm.com
Mon Sep 18 07:24:50 PDT 2006


Michael:

    You are right. The idea was to use sysfs resource0 whenever it is
available and fall back to config space when it is not. This would make
both new and old kernels happy. This re-structured mopen() and make the
patch look big.

    I dug into the ppc64 a little bit. The device driver does IO remap.
ioremap is needed in IBM pSeries machines. I suspect that's why
resource0 (and other mmap) only works when the device driver is loaded.
I have not figured out a way to do ioremap from user space. In addition
to open and mmap, maybe I should try to read a few bytes and fall back
to config space if the read failed. I suspect x86_64 suffers from the
same problem. I am getting an AMD blade to find what exact the problem
is.

    You mentioned "your version" of mstflint. Is that a different one
from the one in OFED-1.0? If it is, would you mind sending me a copy of
your version so that I can play with it as well? Thanks.

On Sun, 2006-09-17 at 16:34 +0300, Michael S. Tsirkin wrote:
> Quoting r. Moshe Kazir <moshek at voltaire.com>:
> > Subject: Mstflint - not working on ppc64 and when driver is not loaded on AMD
> > 
> > 
> > Michael,
> >  
> > The attached patch was received from Frank (IBM) .
> 
> Wow, that's one big patch, I can't see what it's doing at all.
> Can just the relevant fix be isolated?
> 
> > Frank change the mmap in the mopen function and now it is working o.k. 
> > on my IBM JS21 ppc64 (sles9 sp3 sles10) and IBM  HS21 (EM64T) sles9 sp3
> > all the computer uses PCI-Ex HCA cards
> 
> > I tested this fix on AMD computer (PCI-X)  and found that it did not fix
> > the problem initially reported by Or Gerlitz in the attached message. 
> 
> That is, if it is even relevant?
> 
> > Also, I suspect that it doesn't work on MAC ppc64 G5 with PCI-X . (I
> > have to repeated this test) .
> > 
> > I'm suspect that this this is a PCI-X to PCI-EX issue .
> > 
> 
> Hmm.
> What I can understand of the patch, it attempts using sysfs resource0
> which is only implemented on kernels > 2.6.12 or 2.6.13, so
> that's probably your issue.
> 
> Can you try passing the following to mstflint (my version):
> -d /sys/bus/pci/devices/0000\:08\:00.0/resource0 q
> where 0000\:08\:00.0 is the appropriate device?
> 
> Does this work with driver not loaded? On which OS-es?
> 





More information about the general mailing list