#13447: Make libsingular multivariate polynomial rings collectable
-------------------------------------------------------+--------------------
       Reporter:  nbruin                               |         Owner:  rlm    
 
           Type:  defect                               |        Status:  new    
 
       Priority:  major                                |     Milestone:  
sage-5.4
      Component:  memleak                              |    Resolution:         
 
       Keywords:                                       |   Work issues:         
 
Report Upstream:  Reported upstream. No feedback yet.  |     Reviewers:         
 
        Authors:                                       |     Merged in:         
 
   Dependencies:                                       |      Stopgaps:         
 
-------------------------------------------------------+--------------------

Comment (by nbruin):

 Replying to [comment:9 SimonKing]:
 > And have we actually established that this problem does not occur with
 older Singular versions?

 Quoting from comment:1
 >>I have tried and the problem seems to persist with the old singular
 (5.4b0 has a recently upgraded singular).

 In the mean time, a bit of googling led me to OSX's "GuardMalloc". While
 sage+`singular-malloc` does not crash on the doctest, it does crash when
 run with
 {{{
 export DYLD_INSERT_LIBRARIES=/usr/lib/libgmalloc.dylib
 }}}
 Since gmalloc is a memory manager that places each allocation on its own
 page with protected/unmapped memory as close as possible around the block
 and that unmaps the block as soon as freed (I'm just parroting the
 manpage), a segfault is likely due to an access-after-free or access-out-
 of-bounds -- the one that would normally cause the corruption and then the
 segfault much later. (that's the whole idea of replacing omalloc -- I
 don't think it's doable to get omalloc to segfault on an access-after-
 free). This all comes at a significant speed penalty of course, so
 experiments are painful and I wouldn't even be able to interpret the
 backtrace/coredump if I got it (I'd hope that the gmalloc-induced segfault
 would be reproducible in gdb). It would really be useful if the test file
 would be pared down to an absolute minimum. That's basically just a
 backtracking search on which elements can be removed while still
 triggering a segfault.

 However, I think this is a strong indication that there is a real memory
 violation at the base of this and that it is tracable.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/13447#comment:10>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to