[Gc] Test failures, hangs, crashes with 2011-04-25 CVS checkout

Peter O'Gorman gc at mlists.thewrittenword.com
Mon May 2 19:00:27 PDT 2011


On Thu, Apr 28, 2011 at 12:07:52AM +0400, Ivan Maidanski wrote:
> > low = 1
> > (dbx) print list
> > list = 0x809d860
> > (dbx) print *list
> > *list = {
> > sexpr_car = 0xa84
> 
> Could you please watch when this value is assigned to sexpr_car.

Sorry, forgot about this.

Switched to incremental mode
Reading dirty bits from /proc
stopped in reverse_test_inner at line 556 in file "test.c"
  556       b = ints(1, 50);
A.aa = 0x809d860
A.aa->sexpr_car = 0x809de70

stopped in GC_reclaim_clear at line 152 in file "reclaim.c"
  152                       list = ((ptr_t)p);
A.aa = 0x809d860
A.Aa.sexpr_car = <parse failed>
A.aa->sexpr_car = (nil)
(dbx) where
=>[1] GC_reclaim_clear(hbp = 0x809d000, hhdr = 0x80ae480, sz = 16U, list = (nil), count = 0xfef85e44), line 152 in "reclaim.c"
  [2] GC_reclaim_generic(hbp = 0x809d000, hhdr = 0x80ae480, sz = 16U, init = 1, list = (nil), count = 0xfef85e44), line 237 in "reclaim.c"
  [3] GC_reclaim_small_nonempty_block(hbp = 0x809d000, report_if_found = 0), line 268 in "reclaim.c"
  [4] GC_continue_reclaim(sz = 2U, kind = 1), line 566 in "reclaim.c"
  [5] GC_allocobj(gran = 2U, kind = 1), line 1304 in "alloc.c"
  [6] GC_generic_malloc_inner(lb = 8U, k = 1), line 123 in "malloc.c"
  [7] GC_generic_malloc(lb = 8U, k = 1), line 163 in "malloc.c"
  [8] GC_malloc(lb = 8U), line 250 in "malloc.c"
  [9] small_cons(x = 0xe23, y = (nil)), line 264 in "test.c"
  [10] ints(low = 3619, up = 4500), line 334 in "test.c"


stopped in small_cons at line 270 in file "test.c"
  270       r -> sexpr_cdr = y;
A.aa = 0x809d860
A.aa->sexpr_car = 0xe84
(dbx) where
=>[1] small_cons(x = 0xe84, y = (nil)), line 270 in "test.c"
  [2] ints(low = 3716, up = 4500), line 334 in "test.c"
  [3] ints(low = 3715, up = 4500), line 334 in "test.c"
  [4] ints(low = 3714, up = 4500), line 334 in "test.c"

signal SEGV (no mapping at the fault address) in check_ints at line 378 in file "test.c"
  378       if (SEXPR_TO_INT(car(car(list))) != low) {
A.aa = 0x809d860
A.aa->sexpr_car = 0xe84

Hope this helps,
Will do the GCC built one later, but I am sure it's similar.
Peter
-- 
Peter O'Gorman
pogma at thewrittenword.com


More information about the Gc mailing list