FFTW / fftw3

DO NOT CHECK OUT THESE FILES FROM GITHUB UNLESS YOU KNOW WHAT YOU ARE DOING. (See below.)
GNU General Public License v2.0
2.66k stars 651 forks source link

Segmentation fault in check() #343

Open psilhavy opened 7 months ago

psilhavy commented 7 months ago

fftw version 3.3.10 clang version 16.0.6 Target: x86_64-unknown-linux-gnu Thread model: posix

 ../configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir=/usr/lib64 --enable-sse2 --enable-avx --enable-avx2 --enable-avx512 --enable-shared --enable-float --enable-debug
Thread 46 "lmms" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fff8a3326c0 (LWP 14994)]
0x00007ffff6645981 in check (ht=0x1411e30) at ../../kernel/planner.c:1019
1019                        if (VALIDP(l)) {
(gdb) bt
#0  0x00007ffff6645981 in check (ht=0x1411e30) at ../../kernel/planner.c:1019
#1  0x00007ffff664475d in mkplan (ego=0x1411dc0, p=0xacc7440)
    at ../../kernel/planner.c:640
#2  0x00007ffff66456be in fftwf_mkplan_d (ego=0x1411dc0, p=0xacc7440)
    at ../../kernel/planner.c:970
#3  0x00007ffff66d5412 in mkcldw
    (ego_=0x12fc780, kind=HC2R00, r=2, rs=512, m=16, ms=32, v=1, vs=0, cr=0x7fff98004060, ci=0x7fff98004064, plnr=0x1411dc0) at ../../rdft/ct-hc2c-direct.c:334
#4  0x00007ffff66d3a0b in mkplan (ego_=0x12fc780, p_=0xbe34bc0, plnr=0x1411dc0)
    at ../../rdft/ct-hc2c.c:215
#5  0x00007ffff6644209 in invoke_solver
    (ego=0x1411dc0, p=0xbe34bc0, s=0x12fc780, nflags=0x7fff8a331624)
    at ../../kernel/planner.c:486
#6  0x00007ffff66443fc in search0
    (ego=0x1411dc0, p=0xbe34bc0, slvndx=0x7fff8a33162c, flagsp=0x7fff8a331624)
    at ../../kernel/planner.c:529
#7  0x00007ffff664462f in search
    (ego=0x1411dc0, p=0xbe34bc0, slvndx=0x7fff8a33162c, flagsp=0x7fff8a331624)
    at ../../kernel/planner.c:600
#8  0x00007ffff6644ad3 in mkplan (ego=0x1411dc0, p=0xbe34bc0)
    at ../../kernel/planner.c:711
#9  0x00007ffff66456be in fftwf_mkplan_d (ego=0x1411dc0, p=0xbe34bc0)
    at ../../kernel/planner.c:970
--Type <RET> for more, q to quit, c to continue without paging--
#10 0x00007ffff66d5412 in mkcldw
    (ego_=0x13720c0, kind=HC2R00, r=32, rs=32, m=16, ms=2, v=1, vs=0, cr=0x7fff98004060, ci=0x7fff98004064, plnr=0x1411dc0) at ../../rdft/ct-hc2c-direct.c:334
#11 0x00007ffff66d3a0b in mkplan (ego_=0x13720c0, p_=0x11eed80, plnr=0x1411dc0)
    at ../../rdft/ct-hc2c.c:215
#12 0x00007ffff6644209 in invoke_solver
    (ego=0x1411dc0, p=0x11eed80, s=0x13720c0, nflags=0x7fff8a3318f4)
    at ../../kernel/planner.c:486
#13 0x00007ffff66449c7 in mkplan (ego=0x1411dc0, p=0x11eed80)
    at ../../kernel/planner.c:686
#14 0x00007ffff67e8777 in mkplan0
    (plnr=0x1411dc0, flags=65, prb=0x11eed80, hash_info=0, wisdom_state=WISDOM_NORMAL) at ../../api/apiplan.c:42
#15 0x00007ffff67e87be in mkplan
    (plnr=0x1411dc0, flags=65, prb=0x11eed80, hash_info=0)
    at ../../api/apiplan.c:56
#16 0x00007ffff67e8a21 in fftwf_mkapiplan (sign=0, flags=1, prb=0x11eed80)
    at ../../api/apiplan.c:124
#17 0x00007ffff67ede67 in fftwf_plan_many_dft_c2r
    (rank=1, n=0x7fff8a331b8c, howmany=1, in=0x7fff98004060, inembed=0x0, istride=1, idist=1, out=0x7fff98001b70, onembed=0x0, ostride=1, odist=1, flags=65)
    at ../../api/plan-many-dft-c2r.c:43
#18 0x00007ffff67ed2c8 in fftwf_plan_dft_c2r
--Type <RET> for more, q to quit, c to continue without paging--
    (rank=1, n=0x7fff8a331b8c, in=0x7fff98004060, out=0x7fff98001b70, flags=64)
    at ../../api/plan-dft-c2r.c:25
#19 0x00007ffff67ed1df in fftwf_plan_dft_c2r_1d
    (n=512, in=0x7fff98004060, out=0x7fff98001b70, flags=64)
    at ../../api/plan-dft-c2r-1d.c:25
#20 0x00007fffea466e2a in  ()
    at /usr/local/lib64/lv2/gx_amp_stereo.lv2/gx_amp_stereo.so
#21 0x00007fffea4678f5 in  ()
    at /usr/local/lib64/lv2/gx_amp_stereo.lv2/gx_amp_stereo.so
#22 0x00007fffea466622 in  ()
    at /usr/local/lib64/lv2/gx_amp_stereo.lv2/gx_amp_stereo.so
#23 0x00007fffea44cfad in  ()
    at /usr/local/lib64/lv2/gx_amp_stereo.lv2/gx_amp_stereo.so
#24 0x00007fffea44c639 in  ()
    at /usr/local/lib64/lv2/gx_amp_stereo.lv2/gx_amp_stereo.so
#25 0x000000000062996d in lmms::Lv2Worker::workerFunc() (this=0x145ac70)
    at /usr/src/lmms-master-2/src/core/lv2/Lv2Worker.cpp:167
#26 0x00007ffff52e4453 in  () at /usr/lib64/libstdc++.so.6
#27 0x00007ffff4e92cc2 in start_thread () at /lib64/libc.so.6
#28 0x00007ffff4f1e228 in clone3 () at /lib64/libc.so.6
(gdb) list
1014                   unsigned g, h = h1(ht, l1->s), d = h2(ht, l1->s);
1015
1016                   g = h;
1017                   do {
1018                        solution *l = ht->solutions + g;
1019                        if (VALIDP(l)) {
1020                             if (l1 == l)
1021                                  foundit = 1;
1022                             else if (LIVEP(l) && md5eq(l1->s, l->s)) {
1023                                  A(!subsumes(&l->flags, SLVNDX(l), &l1->flags));
(gdb) p l
$1 = (solution *) 0x5e8
(gdb) p *l
Cannot access memory at address 0x5e8