#10058: Segfault in backward and inverse FFT for 2**n elements
----------------------------------------------------------+-----------------
       Reporter:  mpatel                                  |         Owner:  
jason, jkantor           
           Type:  defect                                  |        Status:  
needs_review             
       Priority:  major                                   |     Milestone:  
sage-5.8                 
      Component:  numerical                               |    Resolution:      
                     
       Keywords:  gsl, fft, segfault                      |   Work issues:      
                     
Report Upstream:  N/A                                     |     Reviewers:  
Luis Felipe Tabera Alonso
        Authors:  Mike Hansen, Luis Felipe Tabera Alonso  |     Merged in:      
                     
   Dependencies:                                          |      Stopgaps:      
                     
----------------------------------------------------------+-----------------
Changes (by {'newvalue': u'Mike Hansen, Luis Felipe Tabera Alonso', 'oldvalue': 
''}):

  * keywords:  => gsl, fft, segfault
  * reviewer:  => Luis Felipe Tabera Alonso
  * status:  new => needs_review
  * author:  => Mike Hansen, Luis Felipe Tabera Alonso


Old description:

> Sage crashes when asked to do a backward or inverse FFT for sizes that
> are powers of two:
> {{{
> sage: a = FFT(5)
> sage: a[1] = 2
> sage: a.forward_transform()
> sage: a.backward_transform()
> sage: a = FFT(4)
> sage: a[1] = 2
> sage: a.forward_transform()
> sage: a.backward_transform()
>

> ------------------------------------------------------------
> Unhandled SIGSEGV: A segmentation fault occurred in Sage.
> This probably occurred because a *compiled* component
> of Sage has a bug in it (typically accessing invalid memory)
> or is not properly wrapped with _sig_on, _sig_off.
> You might want to run Sage under gdb with 'sage -gdb' to debug this.
> Sage will now terminate (sorry).
> ------------------------------------------------------------
> }}}
> This is with 4.6.alpha2.
>
> Joal Heagney reported this problem on [http://groups.google.com/group
> /sage-devel/browse_thread/thread/7830e0c484a0f38d sage-devel].

New description:

 Sage crashes when asked to do a backward or inverse FFT for sizes that are
 powers of two:
 {{{
 sage: a = FFT(5)
 sage: a[1] = 2
 sage: a.forward_transform()
 sage: a.backward_transform()
 sage: a = FFT(4)
 sage: a[1] = 2
 sage: a.forward_transform()
 sage: a.backward_transform()


 ------------------------------------------------------------
 Unhandled SIGSEGV: A segmentation fault occurred in Sage.
 This probably occurred because a *compiled* component
 of Sage has a bug in it (typically accessing invalid memory)
 or is not properly wrapped with _sig_on, _sig_off.
 You might want to run Sage under gdb with 'sage -gdb' to debug this.
 Sage will now terminate (sorry).
 ------------------------------------------------------------
 }}}
 This is with 4.6.alpha2.

 Joal Heagney reported this problem on [http://groups.google.com/group
 /sage-devel/browse_thread/thread/7830e0c484a0f38d sage-devel].

 Apply: trac_10058.2.patch, trac_10058_doc.patch

--

Comment:

 I have reviewed (and rebased) the code of M. Hansen and it is correct. I
 have also added another patch that fills coverage of fft.pyx and cleans
 the plot code. This second patch needs review.

 Apply: trac_10058.2.patch, trac_10058_doc.patch

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/10058#comment:3>
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 unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to