#13863: Segfault in pari galoisconj0
-------------------------------------------------------+--------------------
Reporter: vbraun | Owner: was
Type: defect | Status: new
Priority: major | Milestone:
sage-5.6
Component: number theory | Resolution:
Keywords: | Work issues:
Report Upstream: Reported upstream. No feedback yet. | Reviewers:
Authors: | Merged in:
Dependencies: | Stopgaps:
-------------------------------------------------------+--------------------
Changes (by jdemeyer):
* upstream: N/A => Reported upstream. No feedback yet.
Old description:
> I found this using electric fence:
> {{{
> [vbraun@volker-desktop sage-5.6.beta0]$ ef ./sage -gdb
> ...
> sage: K.<a> = NumberField(x^2+1)
> sage: K.pari_nf().nfgaloisconj()
>
> Program received signal SIGSEGV, Segmentation fault.
> galoisanalysis (T=T@entry=0x7fffa570cf88, ga=ga@entry=0x7fffffffba50,
> calcul_l=calcul_l@entry=1)
> at ../src/basemath/galconj.c:1305
> 1305 ../src/basemath/galconj.c: No such file or directory.
> Missing separate debuginfos, use: debuginfo-install
> atlas-3.8.4-7.fc18.x86_64 expat-2.1.0-4.fc18.x86_64
> fontconfig-2.10.2-1.fc18.x86_64 glibc-2.16-28.fc18.x86_64
> libgcc-4.7.2-8.fc18.x86_64 libpng-1.5.13-1.fc18.x86_64
> libstdc++-4.7.2-8.fc18.x86_64
> (gdb) bt
> #0 galoisanalysis (T=T@entry=0x7fffa570cf88, ga=ga@entry=0x7fffffffba50,
> calcul_l=calcul_l@entry=1)
> at ../src/basemath/galconj.c:1305
> #1 0x00007fffea0b4353 in galoisconj4_main (T=0x7fffa570cf88,
> T@entry=0x7fffa570cfb0,
> den=0x7fffea2d2c40 <readonly_constants+32>, flag=0) at
> ../src/basemath/galconj.c:2212
> #2 0x00007fffea0b4f86 in galoisconj (nf=0x7fffa570cfb0, d=<optimized
> out>) at ../src/basemath/galconj.c:2312
> #3 0x00007fffea0b56c9 in galoisconj0 (nf=<optimized out>,
> flag=flag@entry=0, d=<optimized out>,
> prec=<optimized out>) at ../src/basemath/galconj.c:2321
> #4 0x00007fffe2cc6974 in
> __pyx_pf_4sage_4libs_4pari_3gen_3gen_608nfgaloisconj (
> __pyx_v_self=__pyx_v_self@entry=0x7fffa73cde68, __pyx_v_flag=0,
> __pyx_v_denom=<optimized out>,
> __pyx_v_precision=0) at sage/libs/pari/gen.c:38446
> #5 0x00007fffe2cc6dd0 in
> __pyx_pw_4sage_4libs_4pari_3gen_3gen_609nfgaloisconj
> (__pyx_v_self=0x7fffa73cde68,
> __pyx_args=<optimized out>, __pyx_kwds=0x0) at
> sage/libs/pari/gen.c:38360
> #6 0x00007ffff7ae7742 in call_function (oparg=<optimized out>,
> pp_stack=0x7fffffffbf80) at Python/ceval.c:4021
> #7 PyEval_EvalFrameEx (f=f@entry=0x7fffa55aee30,
> throwflag=throwflag@entry=0) at Python/ceval.c:2666
> }}}
> The relevant piece of the pari code seems to be
> {{{
> static int
> galoisanalysis(GEN T, struct galois_analysis *ga, long calcul_l)
> {
> ...
> n = degpol(T);
> O = const_vecsmall(n, 0);
> ...
> ga->p4 = O[4]; <--- this is where the segfault occurs
> }}}
New description:
I found this using electric fence:
{{{
[vbraun@volker-desktop sage-5.6.beta0]$ ef ./sage -gdb
...
sage: K.<a> = NumberField(x^2+1)
sage: K.pari_nf().nfgaloisconj()
Program received signal SIGSEGV, Segmentation fault.
galoisanalysis (T=T@entry=0x7fffa570cf88, ga=ga@entry=0x7fffffffba50,
calcul_l=calcul_l@entry=1)
at ../src/basemath/galconj.c:1305
1305 ../src/basemath/galconj.c: No such file or directory.
Missing separate debuginfos, use: debuginfo-install
atlas-3.8.4-7.fc18.x86_64 expat-2.1.0-4.fc18.x86_64
fontconfig-2.10.2-1.fc18.x86_64 glibc-2.16-28.fc18.x86_64
libgcc-4.7.2-8.fc18.x86_64 libpng-1.5.13-1.fc18.x86_64
libstdc++-4.7.2-8.fc18.x86_64
(gdb) bt
#0 galoisanalysis (T=T@entry=0x7fffa570cf88, ga=ga@entry=0x7fffffffba50,
calcul_l=calcul_l@entry=1)
at ../src/basemath/galconj.c:1305
#1 0x00007fffea0b4353 in galoisconj4_main (T=0x7fffa570cf88,
T@entry=0x7fffa570cfb0,
den=0x7fffea2d2c40 <readonly_constants+32>, flag=0) at
../src/basemath/galconj.c:2212
#2 0x00007fffea0b4f86 in galoisconj (nf=0x7fffa570cfb0, d=<optimized
out>) at ../src/basemath/galconj.c:2312
#3 0x00007fffea0b56c9 in galoisconj0 (nf=<optimized out>,
flag=flag@entry=0, d=<optimized out>,
prec=<optimized out>) at ../src/basemath/galconj.c:2321
#4 0x00007fffe2cc6974 in
__pyx_pf_4sage_4libs_4pari_3gen_3gen_608nfgaloisconj (
__pyx_v_self=__pyx_v_self@entry=0x7fffa73cde68, __pyx_v_flag=0,
__pyx_v_denom=<optimized out>,
__pyx_v_precision=0) at sage/libs/pari/gen.c:38446
#5 0x00007fffe2cc6dd0 in
__pyx_pw_4sage_4libs_4pari_3gen_3gen_609nfgaloisconj
(__pyx_v_self=0x7fffa73cde68,
__pyx_args=<optimized out>, __pyx_kwds=0x0) at
sage/libs/pari/gen.c:38360
#6 0x00007ffff7ae7742 in call_function (oparg=<optimized out>,
pp_stack=0x7fffffffbf80) at Python/ceval.c:4021
#7 PyEval_EvalFrameEx (f=f@entry=0x7fffa55aee30,
throwflag=throwflag@entry=0) at Python/ceval.c:2666
}}}
The relevant piece of the pari code seems to be
{{{
static int
galoisanalysis(GEN T, struct galois_analysis *ga, long calcul_l)
{
...
n = degpol(T);
O = const_vecsmall(n, 0);
...
ga->p4 = O[4]; <--- this is where the segfault occurs
}}}
'''Reported upstream''': [http://pari.math.u-bordeaux.fr/cgi-
bin/bugreport.cgi?bug=1389]
--
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/13863#comment:2>
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.