Bug#522571: bam: broken on SPARC
Julien Cristau
jcristau at debian.org
Sun Apr 5 00:01:28 UTC 2009
On Sun, 2009-04-05 at 01:14 +0200, Gonéri Le Bouder wrote:
> Package: bam
> Version: 0.2.0-2
> Severity: serious
>
> bam is broken on SPARC an gives "Bus error". Teeworlds build fails
> because of that
>
i had a quick look on sperger.d.o, and it looks like bam thinks it can
handle memory allocation and does a pretty bad job at it.
Program received signal SIGBUS, Bus error.
[Switching to Thread 0xf7ec7a20 (LWP 26427)]
0x00014df8 in node_create (nodeptr=0xffb1e4b4, graph=0xf7be6018,
filename=0x3c660 "datasrc/content.py", label=0x0, cmdline=0x0)
at src/node.c:102
102 node->id = graph->num_nodes++;
(gdb) where
#0 0x00014df8 in node_create (nodeptr=0xffb1e4b4, graph=0xf7be6018,
filename=0x3c660 "datasrc/content.py", label=0x0, cmdline=0x0)
at src/node.c:102
#1 0x0001536c in node_get (graph=0xf7be6018, filename=0x30136 "")
at src/node.c:184
#2 0x000153a8 in node_add_dependency (node=0x3001c,
filename=0x3c660 "datasrc/content.py") at src/node.c:197
#3 0x00012a78 in lf_add_dependency (L=0x34020) at src/main.c:332
[...]
(gdb) disass
Dump of assembler code for function node_create:
[...]
0x00014de8 <node_create+204>: call 0x144dc <mem_allocate>
0x00014dec <node_create+208>: ld [ %i1 + %l1 ], %o0
0x00014df0 <node_create+212>: or %l0, 8, %l0
0x00014df4 <node_create+216>: ld [ %i1 + %l0 ], %g1
0x00014df8 <node_create+220>: st %g1, [ %o0 + 0x34 ]
[...]
(gdb) info registers
[...]
o0 0x300fa 196858
[...]
(%g1 is graph->num_nodes, %o0 is node, 0x34 is the offset of id in
struct NODE)
so node has just been returned by mem_allocate(), its address is
0x300fa, which is absolutely not aligned.
and indeed looking inside src/mem.c shows absolutely no attempt at
returning properly aligned pointers.
Cheers,
Julien
More information about the Pkg-games-devel
mailing list