Project

General

Profile

Actions

Bug #289

closed

fail to build on sparc

Added by Yannick Brosseau over 11 years ago. Updated almost 11 years ago.

Status:
Resolved
Priority:
Normal
Target version:
-
Start date:
06/29/2012
Due date:
% Done:

0%

Estimated time:

Description

From the debian test build:

Please note that these notifications do not necessarily mean bug reports
in your package but could also be caused by other packages, temporary
uninstallabilities and arch-specific breakages. A look at the build log
despite this disclaimer would be appreciated however.

Actions #1

Updated by Yannick Brosseau over 11 years ago

I've tried to build on sure and here is the errors I get there:

make2: Entering directory `/root/tests/urcu'
CC wfqueue.lo
/tmp/ccIylbUa.s: Assembler messages:
/tmp/ccIylbUa.s:56: Error: Architecture mismatch on "membar".
/tmp/ccIylbUa.s:56: (Requires v9|v9a|v9b; requested architecture is sparclite.)
/tmp/ccIylbUa.s:57: Error: Architecture mismatch on "cas".
/tmp/ccIylbUa.s:57: (Requires v9|v9a|v9b; requested architecture is sparclite.)
/tmp/ccIylbUa.s:58: Error: Architecture mismatch on "membar".
/tmp/ccIylbUa.s:58: (Requires v9|v9a|v9b; requested architecture is sparclite.)
/tmp/ccIylbUa.s:192: Error: Architecture mismatch on "membar".
/tmp/ccIylbUa.s:192: (Requires v9|v9a|v9b; requested architecture is sparclite.)
/tmp/ccIylbUa.s:193: Error: Architecture mismatch on "cas".
/tmp/ccIylbUa.s:193: (Requires v9|v9a|v9b; requested architecture is sparclite.)
/tmp/ccIylbUa.s:194: Error: Architecture mismatch on "membar".
/tmp/ccIylbUa.s:194: (Requires v9|v9a|v9b; requested architecture is sparclite.)
/tmp/ccIylbUa.s:438: Error: Architecture mismatch on "membar".
/tmp/ccIylbUa.s:438: (Requires v9|v9a|v9b; requested architecture is sparclite.)
/tmp/ccIylbUa.s:439: Error: Architecture mismatch on "cas".
/tmp/ccIylbUa.s:439: (Requires v9|v9a|v9b; requested architecture is sparclite.)
/tmp/ccIylbUa.s:440: Error: Architecture mismatch on "membar".
/tmp/ccIylbUa.s:440: (Requires v9|v9a|v9b; requested architecture is sparclite.)
make2: *** [wfqueue.lo] Error 1
make2: Leaving directory `/root/tests/urcu'

Actions #2

Updated by Mathieu Desnoyers over 11 years ago

sparc has specific instructions in the userspace rcu README file. Please
try to build following those.

Thanks,

Mathieu

--
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com

Actions #3

Updated by Yannick Brosseau over 11 years ago

Why are these not by default for a sparc build?

Actions #4

Updated by Mathieu Desnoyers over 11 years ago

Why are these not by default for a sparc build?

Because sparc is only supported for processors that support sparc v9
atomic instructions at this point. Pretty much all recent and relatively
old sparc machines support that, but not all. So if a distribution
targets sparc older than v9, then we'd need a fallback similar to what
we have done for 386 support, but it has not been done yet, and I have
no intent on doing this myself, as I don't have access to these ancient
machines, and I don't see much value in supporting them.

The reason why the -Wa,-Av9a flags are not the default is because I want
the users to specify explicitly that they are OK targeting only sparc v9
and more recent than passing compiler flags that would build, but would
trigger invalid instruction faults at runtime on ancient hardware.

So as far as distributions are concerned, you should check if the sparc
architecture supports sparc older than v9. If not, then it would be OK
to do a urcu sparc package. Else, we'd need someone to contribute the
386-alike fallback based on pthread mutexes, and to look at that
architecture to see what memory barriers are required, if any are
required.

Thanks,

Mathieu

--
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com

Actions #5

Updated by Mathieu Desnoyers over 11 years ago

  • Status changed from New to Feedback
Actions #6

Updated by Mathieu Desnoyers almost 11 years ago

  • Status changed from Feedback to Resolved
https://buildd.debian.org/status/logs.php?pkg=liburcu&ver=0.7.6-2&arch=sparc&suite=sid

0.7.6-2 seems to build fine for sparc on lebrun.

Actions

Also available in: Atom PDF