[openib-general] Re: mstflint failing on sparc64

Michael S. Tsirkin mst at mellanox.co.il
Tue Jan 11 11:34:55 PST 2005


Hello!
Quoting r. Tom Duffy (tduffy at sun.com) "Re: [openib-general] Re: mstflint failing on sparc64":
> On Tue, 2005-01-11 at 20:11 +0200, Michael S. Tsirkin wrote:
> > Here's a patch that adds some debug printouts.
> > Cold you run with this applied, please, mayba I'll se what is wrong?
> 
> tat:~# ./mstflint -d 0000:81:00.0 q
> found line :"8100       15b35a44        7aee40       1ff00100004
> 0             1ff0080000c                       0             1ff0800000
> 0                0                  100000          800000
> 0                 8000000               0 ib_mthca
> "
> base_addr[0]=0x1ff00100004, base_addr[1]=0
> mfind offset=0x1ff00100000
> mmap offset=0x1ff00100000
> Bus error
> 
> -tduffy


I dont understand it. But when you run strace mmap was getting
offset 1ff00100.
I'm staring at the code now but I dont see how it happends.
Need to find a way to debug it I guess.


> P.S.  I get these warnings compiling the mstflint code.  Not sure if it
> matters.
> 
> tduffy at rever:/build1/tduffy/openib-work/gen2-sparc/src/userspace/mstflin
> t$ make
> g++ -g -I. -fno-exceptions -Wall -O2 flint.cpp -o mstflint
> flint.cpp:201:1: warning: "__le32_to_cpu" redefined
> In file included from flint.cpp:39:
> mtcr.h:92:1: warning: this is the location of the previous definition
> flint.cpp:204:1: warning: "__cpu_to_le32" redefined
> mtcr.h:89:1: warning: this is the location of the previous definition
> 
> P.P.S.  I installed the 64bit libc6 libraries, recompiled mstflint as 64
> bit, and the problem was still there.  Unfortunately, I couldn't strace
> the 64bit binary.  Plus, there were a bunch more compile warnings:
> 
> tduffy at rever:/build1/tduffy/openib-work/gen2-sparc/src/userspace/mstflin
> t$ g++ -g -m64 -I. -fno-exceptions -Wall -O2 flint.cpp -o mstflint
> flint.cpp:201:1: warning: "__le32_to_cpu" redefined
> In file included from flint.cpp:39:
> mtcr.h:92:1: warning: this is the location of the previous definition
> flint.cpp:204:1: warning: "__cpu_to_le32" redefined
> mtcr.h:89:1: warning: this is the location of the previous definition
> flint.cpp: In function `bool pathGUIDs(FImage&, u_int64_t*, bool)':
> flint.cpp:3198: warning: long long unsigned int format, u_int64_t arg
> (arg 2)

It seems u_int64_t is different from long long in this setup.
dont think it matters. Am I right that it behaves the same?

mst




More information about the general mailing list