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 {

Attachment: signature.asc
Description: Digital signature

_______________________________________________
http://lists.parrot.org/mailman/listinfo/parrot-dev

Reply via email to