If it helps, here is a backtrace of all threads during the hang (scroll a bit down for the backtrace):
Code : Tout sélectionner
(sid_armhf-dchroot)infinity0@amdahl:~/giac/check$ ../src/icas testcas4 2>/dev/null &
[1] 23094
(sid_armhf-dchroot)infinity0@amdahl:~/giac/check$ 1,
1,
0,
0,
GF(2,a^2+a+1,[a,FF],undef),
((1 % 2)*x+1 % 2)*((1 % 2)*x+FF(a))*(x+FF(a+1)),
GF(2,j^2+j+1,[j,F4],undef),
[0,F4(j)],
[0,0],[F4(j),0],[0,F4(j)],[F4(j),F4(j)],
(x+(1-i)/sqrt(2))*(x+(1+i)/sqrt(2))*(x+(-1-i)/sqrt(2))*(x+(-1+i)/sqrt(2)),
(sid_armhf-dchroot)infinity0@amdahl:~/giac/check$ gdb -q -p 23094
Attaching to process 23094
[New LWP 23122]
[New LWP 23123]
[New LWP 23124]
[New LWP 23125]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/arm-linux-gnueabihf/libthread_db.so.1".
__libc_do_syscall () at ../sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:47
47 ../sysdeps/unix/sysv/linux/arm/libc-do-syscall.S: No such file or directory.
(gdb) thread apply all bt
Thread 5 (Thread 0x1d03880 (LWP 23125)):
#0 __libc_do_syscall () at ../sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:46
#1 0xf57aefd4 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x24312ac) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#2 __pthread_cond_wait_common (abstime=0x0, mutex=0x24312b0, cond=0x2431280) at pthread_cond_wait.c:502
#3 __pthread_cond_wait (cond=cond@entry=0x2431280, mutex=mutex@entry=0x24312b0) at pthread_cond_wait.c:655
#4 0xf6253e34 in mt_queue_run (arg=<optimized out>) at ../src/mt/pthread.c:146
#5 0xf57aa614 in start_thread (arg=0x14665558) at pthread_create.c:463
#6 0xf547d90c in ?? () at ../sysdeps/unix/sysv/linux/arm/clone.S:73 from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
Thread 4 (Thread 0x107d880 (LWP 23124)):
#0 __libc_do_syscall () at ../sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:46
#1 0xf57aefd4 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x243123c) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#2 __pthread_cond_wait_common (abstime=0x0, mutex=0x2431240, cond=0x2431210) at pthread_cond_wait.c:502
#3 __pthread_cond_wait (cond=cond@entry=0x2431210, mutex=mutex@entry=0x2431240) at pthread_cond_wait.c:655
#4 0xf6253e34 in mt_queue_run (arg=<optimized out>) at ../src/mt/pthread.c:146
#5 0xf57aa614 in start_thread (arg=0x14665558) at pthread_create.c:463
#6 0xf547d90c in ?? () at ../sysdeps/unix/sysv/linux/arm/clone.S:73 from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
Thread 3 (Thread 0xff89d880 (LWP 23123)):
#0 __libc_do_syscall () at ../sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:46
#1 0xf57aefd4 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x24311cc) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#2 __pthread_cond_wait_common (abstime=0x0, mutex=0x24311d0, cond=0x24311a0) at pthread_cond_wait.c:502
#3 __pthread_cond_wait (cond=cond@entry=0x24311a0, mutex=mutex@entry=0x24311d0) at pthread_cond_wait.c:655
#4 0xf6253e34 in mt_queue_run (arg=<optimized out>) at ../src/mt/pthread.c:146
#5 0xf57aa614 in start_thread (arg=0x14665558) at pthread_create.c:463
#6 0xf547d90c in ?? () at ../sysdeps/unix/sysv/linux/arm/clone.S:73 from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
Thread 2 (Thread 0xf5157880 (LWP 23122)):
#0 __libc_do_syscall () at ../sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:46
#1 0xf57aefd4 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x2431a04) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#2 __pthread_cond_wait_common (abstime=0x0, mutex=0x2431a08, cond=0x24319d8) at pthread_cond_wait.c:502
#3 __pthread_cond_wait (cond=0x24319d8, mutex=0x2431a08) at pthread_cond_wait.c:655
#4 0xf62540f4 in mtpthread_queue_submit (junk=<optimized out>, workid=4, work=0x23f4310) at ../src/mt/pthread.c:245
#5 0xf5f4dc30 in polint_chinese (worker=<optimized out>, mA=mA@entry=0x23f450c, P=<optimized out>) at ../src/basemath/arith1.c:2766
#6 0xf5f5288c in nmV_polint_center_tree (m2=0x23f43fc, R=0x23f4444, T=0x23f44f8, P=0x23f4500, mA=0x23f450c) at ../src/basemath/arith1.c:2830
#7 nmV_chinese_center (A=0x23f450c, P=0x23f4500, pt_mod=0xf5156170) at ../src/basemath/arith1.c:3114
#8 0xf612a38a in gen_inccrt (str=0xf626540c "ZM_inv_r", worker=worker@entry=0x23f4a8c, dB=dB@entry=0x0, n=n@entry=1, mmin=mmin@entry=4, p=p@entry=0xf5156240, pt_H=pt_H@entry=0xf5156238, pt_mod=pt_mod@entry=0xf515623c,
crt=crt@entry=0xf5f527f5 <nmV_chinese_center>, center=center@entry=0xf5eab975 <FpM_center>) at ../src/headers/pariinl.h:218
#9 0xf5f2d4ee in ZM_inv (A=<optimized out>, pden=pden@entry=0x0) at ../src/basemath/alglin1.c:3811
#10 0xf61071e2 in bestlift_init (a=7, a@entry=0, nf=nf@entry=0x23feef0, C=C@entry=0x23f5040, L=L@entry=0xf5156454) at ../src/basemath/nffactor.c:1359
#11 0xf6109d5a in nfsqff (nf=0x23feef0, pol=0x23fe200, fl=fl@entry=0, den=<optimized out>, den@entry=0xf62c4c14 <readonly_constants+16>) at ../src/basemath/nffactor.c:1910
#12 0xf610bd2c in nffactor (nf=<optimized out>, nf@entry=0x23ffe9c, pol=pol@entry=0x23fff18) at ../src/basemath/nffactor.c:636
#13 0xf69e40b6 in giac::pari_nffactor (p=..., pmin=..., lv=..., res=..., contextptr=contextptr@entry=0x0) at pari.cc:1140
#14 0xf65e8998 in giac::ext_factor (p=..., e=..., an=..., p_content=..., f=std::vector of length 0, capacity 0, complexmode=false, extra_div=...) at gausspol.cc:5728
#15 0xf65e9218 in giac::ext_factor (p=..., e=..., an=..., p_content=..., f=std::vector of length 0, capacity 0, complexmode=complexmode@entry=true, extra_div=...) at gen.h:1550
#16 0xf65e6334 in giac::do_factor (p=..., p_content=..., f=std::vector of length 0, capacity 0, isprimitive=<optimized out>, with_sqrt=with_sqrt@entry=true, complexmode=true, complexmode@entry=false, divide_an_by=..., extra_div=...)
at gausspol.cc:6577
#17 0xf65e696e in giac::factor (p=..., p_content=..., f=std::vector of length 0, capacity 0, isprimitive=isprimitive@entry=false, with_sqrt=with_sqrt@entry=true, complexmode=complexmode@entry=false, divide_an_by=..., extra_div=...)
at gausspol.cc:6679
#18 0xf65b659a in giac::factor (p=..., l=..., fixed_order=fixed_order@entry=false, with_sqrt=with_sqrt@entry=true, divide_an_by=..., extra_div=..., contextptr=contextptr@entry=0xfffe899c) at sym2poly.cc:3267
---Type <return> to continue, or q <return> to quit---
#19 0xf65b7130 in giac::var_factor (e=..., l=..., fixed_order=fixed_order@entry=false, with_sqrt=with_sqrt@entry=true, divide_an_by=..., contextptr=contextptr@entry=0xfffe899c) at gen.h:1550
#20 0xf65b7a34 in giac::in_factor (e_=..., with_sqrt=with_sqrt@entry=true, divide_an_by=..., contextptr=contextptr@entry=0xfffe899c) at sym2poly.cc:3367
#21 0xf65b7d82 in giac::factor (ee=..., with_sqrt=with_sqrt@entry=true, divide_an_by=..., contextptr=contextptr@entry=0xfffe899c) at vector.h:285
#22 0xf65b8078 in giac::factorcollect (args=..., with_sqrt=<optimized out>, contextptr=contextptr@entry=0xfffe899c) at vector.h:28
#23 0xf65b83f6 in giac::_factor (args=..., contextptr=0xfffe899c) at sym2poly.cc:3686
#24 0xf6a9c782 in giac::unary_function_eval::operator() (this=<optimized out>, arg=..., context_ptr=<optimized out>) at unary.h:200
#25 0xf67381a2 in giac::symbolic::eval (this=this@entry=0x10a4034, level=level@entry=25, contextptr=contextptr@entry=0xfffe899c) at gen.h:475
#26 0xf6b06c90 in giac::gen::in_eval (this=this@entry=0xf515723c, level=level@entry=25, evaled=..., contextptr=contextptr@entry=0xfffe899c) at gen.cc:2187
#27 0xf69b3fca in giac::gen::eval (contextptr=0xfffe899c, level=25, this=0xf515723c) at gen.h:704
#28 giac::protectevalorevalf (g=..., level=level@entry=25, approx=<optimized out>, contextptr=contextptr@entry=0xfffe899c) at prog.cc:8170
#29 0xf69b431a in giac::protecteval (g=..., level=25, contextptr=contextptr@entry=0xfffe899c) at prog.cc:8191
#30 0xf68beac0 in giac::in_thread_eval (arg=0x109ddd0) at vector.h:217
#31 0xf57aa614 in start_thread (arg=0x14665558) at pthread_create.c:463
#32 0xf547d90c in ?? () at ../sysdeps/unix/sysv/linux/arm/clone.S:73 from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
Thread 1 (Thread 0xf51aa010 (LWP 23094)):
#0 __libc_do_syscall () at ../sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:47
#1 0xf5458900 in __GI___nanosleep (requested_time=requested_time@entry=0xfffe87d4, remaining=remaining@entry=0x0) at ../sysdeps/unix/sysv/linux/nanosleep.c:28
#2 0xf547929e in usleep (useconds=useconds@entry=1000) at ../sysdeps/posix/usleep.c:32
#3 0x00495562 in xcas::icas_eval (g=..., gg=..., reading_file=<optimized out>, filename=..., contextptr=0xfffe899c) at Xcas1.cc:3375
#4 0x0047716e in main (ARGC=<optimized out>, ARGV=<optimized out>) at icas.cc:1724
(gdb)