You are not logged in.
I tried simple program:
int main() {
int arr[5];
arr[5] = 17;
return 0;
}
gcc -fsanitize=address -Og -ggdb a.c
LD_PRELOAD=/usr/lib/libasan.so ./a.out
My setup is default as possible: amd64/default arch kernel from pacman/default gcc-multilib/default gcc-libs-multilib,
last on the current moment,
but as result I got:
> Shadow memory range interleaves with an existing memory mapping. ASan cannot proceed correctly. ABORTING
Interesting that problem has not 100% probability:
$ for i in `seq 1 100`; do LD_PRELOAD=/usr/lib/libasan.so ./a.out 2>&1 ; sleep 1; done > /tmp/log
$ grep 'Shadow memory range interleaves' /tmp/log | wc -l
86
As you see 14 times I got it to work.
So may be default arch linux has something like memory randomization?
How can I switch it off?
Note that I use default linux, not linux-hardened.
Offline
The issue is this: https://bugs.archlinux.org/task/55008
It will get fixed in the near-ish future.
Offline