diff options
author | Nicholas Clark <nick@ccl4.org> | 2021-09-17 08:20:12 +0000 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2021-09-26 08:51:18 +0000 |
commit | d43f37da28627883b5ed5cbe91039682ddca000e (patch) | |
tree | 27046c0d9212b729f531473a3d1fdd9bf8d5b90f /.github | |
parent | 64bd355f7b38e7ced3cd072b2bf2288e104f21e4 (diff) | |
download | perl-d43f37da28627883b5ed5cbe91039682ddca000e.tar.gz |
In the Linux workflows use MALLOC_PERTURB_ and MALLOC_CHECK_
MALLOC_CHECK_=3 causes glibc to abort if it detects malloc errors.
Specifically, 3 will be "Print detailed error message, stack trace, and
memory mappings, and abort the program."
MALLOC_PERTURB_=254 will cause newly allocated memory to be set to non-zero
values, and freed memory to be set to the given non-zero value.
See `man mallopt`
Intentionally only setting these for the build and test steps, but not the
Configure step, to see if we can later expose bugs caused by bad probes.
If we set it for Configure, the abort this triggers might simply cause a
probe to be silently failed, and we could miss problems.
Diffstat (limited to '.github')
-rw-r--r-- | .github/workflows/testsuite.yml | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/.github/workflows/testsuite.yml b/.github/workflows/testsuite.yml index 252b99f481..12335c2608 100644 --- a/.github/workflows/testsuite.yml +++ b/.github/workflows/testsuite.yml @@ -141,14 +141,14 @@ jobs: ./Configure -des -Dusedevel ${{ matrix.CONFIGURE_ARGS }} -Dprefix="$HOME/perl-blead" -DDEBUGGING - name: Build run: | - make -j2 + MALLOC_PERTURB_=254 MALLOC_CHECK_=3 make -j2 - name: Show Config run: | LD_LIBRARY_PATH=. ./perl -Ilib -V LD_LIBRARY_PATH=. ./perl -Ilib -e 'use Config; print Config::config_sh' - name: Run Tests run: | - TEST_JOBS=2 make -j2 test_harness + MALLOC_PERTURB_=254 MALLOC_CHECK_=3 TEST_JOBS=2 make -j2 test_harness # _ _ _ _____ ___ __ # | (_)_ __ _ ___ __ (_)___ / ( _ ) / /_ @@ -192,7 +192,7 @@ jobs: ./Configure -des -Dusedevel ${{ matrix.CONFIGURE_ARGS }} -Dprefix="$HOME/perl-blead" -DDEBUGGING - name: Build run: | - make -j2 + MALLOC_PERTURB_=254 MALLOC_CHECK_=3 make -j2 - name: Show Config run: | LD_LIBRARY_PATH=. ./perl -Ilib -V @@ -202,7 +202,7 @@ jobs: # linux-i386 is just one job (not a matrix) - name: Run Tests run: | - make -j2 test + MALLOC_PERTURB_=254 MALLOC_CHECK_=3 make -j2 test # ___ ___ # _ __ __ _ __ / _ \/ __| |