diff options
| author | Aaron Conole <[email protected]> | 2024-03-12 10:53:26 -0400 |
|---|---|---|
| committer | David Marchand <[email protected]> | 2024-03-13 13:12:18 +0100 |
| commit | d0d7032a3f6e66c1a09b13ad42e9d7975db8c627 (patch) | |
| tree | 6cff7f0f8f7e3970fbc41bcaac0179cb39ed9ab4 /.github/workflows | |
| parent | a86f381b826660e88794754c41d3aec79ce9b87c (diff) | |
ci: workaround ASan issue in some GitHub Ubuntu 22.04 image
GitHub recently started using newer Ubuntu 22.04 LTS container images,
versioned 20240310.1.0 which use 32-bit entropy for ASLR:
$ sudo sysctl -a | grep vm.mmap.rnd
vm.mmap_rnd_bits = 32
vm.mmap_rnd_compat_bits = 16
This breaks builds (such as the one at
https://github.com/DPDK/dpdk/actions/runs/8234334617/job/22515850325) by
causing a random segfault when ASan is used, because older ASan gets
confused by memory mappings and crashes.
The issue is fixed in newer releases of LLVM:
https://github.com/llvm/llvm-project/commit/fb77ca05ffb4f8e666878f2f6718a9fb4d686839
https://reviews.llvm.org/D148280
But these are not available in Ubuntu 22.04 image.
This should be fixed by GitHub, but until new images are available
reducing ASLR entropy manually to 28 bits to make builds work.
Reported-at: https://github.com/actions/runner-images/issues/9491
Signed-off-by: Aaron Conole <[email protected]>
Suggested-by: Ilya Maximets <[email protected]>
Reviewed-by: David Marchand <[email protected]>
Diffstat (limited to '.github/workflows')
| -rw-r--r-- | .github/workflows/build.yml | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 776fbf6f30..2c308d5e9d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -139,6 +139,13 @@ jobs: .ci/linux-setup.sh # Workaround on $HOME permissions as EAL checks them for plugin loading chmod o-w $HOME + - name: Reduce ASLR entropy + if: env.ASAN == 'true' + # ASan in llvm 14 provided in ubuntu-22.04 is incompatible with + # high-entropy ASLR configured in much newer kernels that GitHub + # runners are using leading to random crashes: + # https://github.com/actions/runner-images/issues/9491 + run: sudo sysctl -w vm.mmap_rnd_bits=28 - name: Build and test run: .ci/linux-build.sh - name: Upload logs on failure |
