diff options
author | Frantisek Sumsal <frantisek@sumsal.cz> | 2021-07-29 18:44:51 +0200 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2021-08-06 16:43:07 +0200 |
commit | 4f01bec00979b23d744a54459a43e41bbfa7c77d (patch) | |
tree | dec1567903efe7cde6d8fd58446fea8b80d039a5 | |
parent | 656baf4a8744da111237e71c8ed5bc7d560195bd (diff) | |
download | systemd-4f01bec00979b23d744a54459a43e41bbfa7c77d.tar.gz |
test: correctly detect ASan on s390x
s390x uses BRAS(L) instead of CALL(Q), e.g.:
```
1009528: c0 e5 ff ff f8 a0 brasl %r14,1008668 <__asan_report_load1@plt>
10095f0: c0 e5 ff ff ea ec brasl %r14,1006bc8 <__asan_stack_malloc_4@plt>
10097f8: c0 e5 ff ff f8 f8 brasl %r14,10089e8 <__asan_report_load8@plt>
```
x86_64 for reference:
```
4011f3: e8 48 fe ff ff callq 401040 <__asan_report_load1@plt>
401227: e8 24 fe ff ff callq 401050 <__asan_report_load8@plt>
401251: e8 da fd ff ff callq 401030 <__asan_init@plt>
```
(cherry picked from commit 8bf79f05532162d19fe6ee211297cff81b4f9874)
(cherry picked from commit 5a6a08284d7ca89218d9e9ccfe44fce8898ef6bf)
(cherry picked from commit 365ed29af67a511c1a1bc427a54bbfe69a3ebc96b)
-rw-r--r-- | test/test-functions | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/test/test-functions b/test/test-functions index beaf4fae2f..59416974b1 100644 --- a/test/test-functions +++ b/test/test-functions @@ -155,7 +155,7 @@ is_built_with_asan() { fi # Borrowed from https://github.com/google/oss-fuzz/blob/cd9acd02f9d3f6e80011cc1e9549be526ce5f270/infra/base-images/base-runner/bad_build_check#L182 - local _asan_calls=$(objdump -dC $SYSTEMD_JOURNALD | egrep "callq\s+[0-9a-f]+\s+<__asan" -c) + local _asan_calls=$(objdump -dC $SYSTEMD_JOURNALD | egrep "(callq?|brasl?)\s+[0-9a-f]+\s+<__asan" -c) if (( $_asan_calls < 1000 )); then return 1 else |