reopen 365559
found 365559 1.0.3-1
tags 365559 patch
thanks

Hi,

The fix for this bug applied in 1.0.3-1 did not resolve the problem, as the latest libmthca failed again to build on sparc [0] with messages:

cc -DHAVE_CONFIG_H -I. -I. -I. -g -Wall -D_GNU_SOURCE -g -Wall -O2 -c src/cq.c -fPIC -DPIC -o .libs/src_mthca_la-cq.o
/tmp/cc3nmfCC.s: Assembler messages:
/tmp/cc3nmfCC.s:336: Error: Unknown opcode: `sync'
/tmp/cc3nmfCC.s:369: Error: Unknown opcode: `sync'
[...]

This is caused by an incorrect definition of mb() in the infiniband/arch.h include file. I believe that the correct definition (at least, according to the /usr/include/asm-sparc/system.h file installed on my system) is

#define mb()    __asm__ __volatile__ ("" : : : "memory")

With the simple attached patch libmthca builds successfully on sparc (I don't have a way to test it due to lack of hardware though).

[0] 
http://buildd.debian.org/fetch.php?&pkg=libmthca&ver=1.0.2-1&arch=sparc&stamp=1151946922&file=log&as=raw

Best regards,

Jurij Smakov                                        [EMAIL PROTECTED]
Key: http://www.wooyd.org/pgpkey/                   KeyID: C99E03CC
diff -aur a/include/infiniband/arch.h b/include/infiniband/arch.h
--- a/include/infiniband/arch.h 2006-05-01 15:59:23.000000000 -0700
+++ b/include/infiniband/arch.h 2006-09-03 22:25:47.000000000 -0700
@@ -82,7 +82,7 @@
 
 #elif defined(__sparc__)
 
-#define mb()   asm volatile("sync" ::: "memory")
+#define mb()   asm volatile("" ::: "memory")
 
 #else
 

Reply via email to