The updated version is still buggy, albeit in a different way, as it hangs
for n=18, fails the test for n=19, then segfaults for any n after that:

 ./dieharder/dieharder -d 209 -n 12 -p 1
#=============================================================================#
#            dieharder version 3.31.1 Copyright 2003 Robert G. Brown
   #
#=============================================================================#
   rng_name    |rands/second|   Seed   |
        mt19937|  1.59e+08  |1346171031|
#=============================================================================#
        test_name   |ntup| tsamples |psamples|  p-value |Assessment
#=============================================================================#
        dab_monobit2|  12|  65000000|       1|0.31742526|  PASSED
$ ./dieharder/dieharder -d 209 -n 17 -p 1
#=============================================================================#
#            dieharder version 3.31.1 Copyright 2003 Robert G. Brown
   #
#=============================================================================#
   rng_name    |rands/second|   Seed   |
        mt19937|  1.75e+08  |2063877943|
#=============================================================================#
        test_name   |ntup| tsamples |psamples|  p-value |Assessment
#=============================================================================#
        dab_monobit2|  17|  65000000|       1|1.00000000|  FAILED
$ ./dieharder/dieharder -d 209 -n 18 -p 1
^C
$ ./dieharder/dieharder -d 209 -n 19 -p 1
#=============================================================================#
#            dieharder version 3.31.1 Copyright 2003 Robert G. Brown
   #
#=============================================================================#
   rng_name    |rands/second|   Seed   |
        mt19937|  1.78e+08  |2027322855|
#=============================================================================#
        test_name   |ntup| tsamples |psamples|  p-value |Assessment
#=============================================================================#
        dab_monobit2|  19|  65000000|       1|0.00000000|  FAILED
$ ./dieharder/dieharder -d 209 -n 20 -p 1
Segmentation fault
$ LD_LIBRARY_PATH=libdieharder/.libs gdb --args dieharder/.libs/dieharder
-d 209 -n 20 -p 1
(gdb) run
Starting program: ~/dieharder-test/dieharder/.libs/dieharder -d 209 -n 20
-p 1
Program received signal SIGSEGV, Segmentation fault.
add_2_test (dtest=0x3ff0000000000000, test=0x55555558a830, count=1)
    at std_test.c:233
233 for(j = 0;j < dtest->nkps;j++){
(gdb) bt
#0  add_2_test (dtest=0x3ff0000000000000, test=0x55555558a830, count=1)
    at std_test.c:233
#1  0x0000555555559bac in execute_test (dtest_num=209) at run_test.c:92
#2  0x0000555555559d82 in run_test () at run_test.c:32
#3  0x000055555555633e in main (argc=7, argv=0x7fffffffe078) at
dieharder.c:90

Unfortunately, the trail of what looks to be stack corruption goes cold
from there...

On Fri, Apr 5, 2024 at 1:24 PM Dirk Eddelbuettel <e...@debian.org> wrote:

>
> Hi Lucas,
>
> On 30 March 2024 at 22:47, Lucas Thode wrote:
> | Package: dieharder
> | Version: 3.31.1.4-1.1
> | Severity: normal
> | X-Debbugs-Cc: thode...@gmail.com
> |
> | Dear Maintainer,
> |
> | `dieharder -d 209 -n $nvalue` crashes for $nvalue>17:
> |
> | $ dieharder -d 209
> |
> #=============================================================================#
> | #            dieharder version 3.31.1 Copyright 2003 Robert G. Brown
>       #
> |
> #=============================================================================#
> |    rng_name    |rands/second|   Seed   |
> |         mt19937|  1.55e+08  |2819069712|
> |
> #=============================================================================#
> |         test_name   |ntup| tsamples |psamples|  p-value |Assessment
> |
> #=============================================================================#
> |         dab_monobit2|  12|  65000000|       1|0.40510331|  PASSED
> | $ dieharder -d 209 -n 12
> |
> #=============================================================================#
> | #            dieharder version 3.31.1 Copyright 2003 Robert G. Brown
>       #
> |
> #=============================================================================#
> |    rng_name    |rands/second|   Seed   |
> |         mt19937|  2.54e+08  | 152376536|
> |
> #=============================================================================#
> |         test_name   |ntup| tsamples |psamples|  p-value |Assessment
> |
> #=============================================================================#
> |         dab_monobit2|  12|  65000000|       1|0.10580971|  PASSED
> | $ dieharder -d 209 -n 17
> |
> #=============================================================================#
> | #            dieharder version 3.31.1 Copyright 2003 Robert G. Brown
>       #
> |
> #=============================================================================#
> |    rng_name    |rands/second|   Seed   |
> |         mt19937|  2.29e+08  |2998370165|
> |
> #=============================================================================#
> |         test_name   |ntup| tsamples |psamples|  p-value |Assessment
> |
> #=============================================================================#
> |         dab_monobit2|  17|  65000000|       1|1.00000000|  FAILED
> | $ dieharder -d 209 -n 18
> | *** stack smashing detected ***: terminated
> | Aborted
> | $ dieharder -d 209 -n 27
> | *** stack smashing detected ***: terminated
> | Aborted
> | $ dieharder -d 209 -n 28
> | Segmentation fault
> |
> | P.S. There are more issues with this test not liking non-standard n
> values, as
> | can be seen from it failing miserably on mt19937 with -n 17, but the
> crash is
> | the most glaring problem.
>
> Good stuff.
>
> dieharder is a little 'dormant' upstream and via my maintenance of the
> Debian
> package I have somewhat inherited upstream.  Can you take a look please if
> this was take care of already at the (somewhat active) shadow repo of mine
> at
>
>    https://github.com/eddelbuettel/dieharder
>
> I will also CC Milan who has been very attentive with a few other fixes,
> and
> may have seen this one too.  We are trying to get hold of Robert but no
> luck
> yet.
>
> Cheers, Dirk
>
> PS Apologies also for replying late. I usually get to bug reports within a
> day but it's a teaching term plus being busy at my 'real job' puts some
> stress on my response times.  :-/   I think I reply quicker to GH issues
> as I
> am on GH all day anyway...
>
>
> | -- System Information:
> | Debian Release: trixie/sid
> |   APT prefers testing
> |   APT policy: (500, 'testing')
> | Architecture: amd64 (x86_64)
> | Foreign Architectures: i386
> |
> | Kernel: Linux 6.3.0-1-amd64 (SMP w/12 CPU threads; PREEMPT)
> | Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE
> not set
> | Shell: /bin/sh linked to /usr/bin/dash
> | Init: systemd (via /run/systemd/system)
> | LSM: AppArmor: enabled
> |
> | Versions of packages dieharder depends on:
> | ii  libc6             2.37-15
> | ii  libdieharder3t64  3.31.1.4-1.1
> | ii  libgsl27          2.7.1+dfsg-6+b1
> |
> | dieharder recommends no packages.
> |
> | dieharder suggests no packages.
> |
> | -- no debconf information
>
> --
> dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org
>

Reply via email to