On Sat, Apr 14, 2012 at 08:28:32PM -0400, Andy Dougherty wrote: > On Sun, 15 Apr 2012, Allison Randal wrote: > > > On 04/14/2012 10:18 PM, Alessandro Ghedini wrote: > > > Hi, > > > > > > I've just noticed that parrot 4.0.0 fails to build from source on ia64 > > > mipsel > > > and sparc [0] with the same "Bus error" when calling: > > > > > >> ./miniparrot -Iruntime/parrot/include config_lib.pir > > > >> runtime/parrot/include/config.fpmc > > > > > > and I can reproduce the failures in the respective porterboxes (I've tried > > > smetana.d.o for sparc and eder.d.o for mipsel). The same happens with the > > > latest revision in the upstream git repository. > > > > Bus error is a memory handling error. Is there a way that I or others > > can get access to the porter boxes? > > This sounds like the same problem I reported last year (on Solaris/SPARC); > it's issue #603: > > https://github.com/parrot/parrot/issues/603 > > There's a hacky patch that works around the problem included with that > issue. Unfortunately, the github migration messed up the patch so it no > longer applies, but there should be a link back to the old version on Trac > which might apply, unless Parrot has changed too much in the meantime.
I've "manually applied" (that is, copy-pasting the changes) that patch, and
indeed fixes the issue on all the three architectures. Though I see some test
failures, not sure if related to this change.
> Test Summary Report
> -------------------
> t/dynpmc/gziphandle.t (Wstat: 0 Tests: 15 Failed: 2)
> Failed tests: 5-6
> t/dynpmc/select.t (Wstat: 0 Tests: 14 Failed: 0)
> TODO passed: 14
> Files=395, Tests=14051, 666 wallclock secs ( 5.12 usr 0.47 sys + 587.46 cusr
> 31.51 csys = 624.56 CPU)
> Result: FAIL
> make: *** [test_core] Error 1
The patch I've used is attached.
Cheers
--
perl -E '$_=q;$/= @{[@_]};and s;\S+;<inidehG ordnasselA>;eg;say~~reverse'
diff --git a/src/gc/fixed_allocator.h b/src/gc/fixed_allocator.h
index 8c2f1b8..6caa1ac 100644
--- a/src/gc/fixed_allocator.h
+++ b/src/gc/fixed_allocator.h
@@ -28,11 +28,12 @@ src/gc/fixed_allocator.h - implementation of allocator for small-size objects.
typedef struct Pool_Allocator_Free_List {
struct Pool_Allocator_Free_List * next;
-
+ char *dummy;
} Pool_Allocator_Free_List;
typedef struct Pool_Allocator_Arena {
struct Pool_Allocator_Arena * next;
+ char *dummy;
} Pool_Allocator_Arena;
typedef struct Pool_Allocator {
signature.asc
Description: Digital signature
_______________________________________________ http://lists.parrot.org/mailman/listinfo/parrot-dev
