Message ID | 20200404203704.69412-1-svens@linux.ibm.com |
---|---|
State | New |
Headers | show |
Series | [1/2] selftests/vDSO: prevent SIGFPE if vdso_info.nbucket is zero | expand |
diff --git a/tools/testing/selftests/vDSO/parse_vdso.c b/tools/testing/selftests/vDSO/parse_vdso.c index 1dbb4b87268f..8e5a70a24d9a 100644 --- a/tools/testing/selftests/vDSO/parse_vdso.c +++ b/tools/testing/selftests/vDSO/parse_vdso.c @@ -226,6 +226,9 @@ void *vdso_sym(const char *version, const char *name) return 0; ver_hash = elf_hash(version); + if (!vdso_info.nbucket) + return NULL; + ELF(Word) chain = vdso_info.bucket[elf_hash(name) % vdso_info.nbucket]; for (; chain != STN_UNDEF; chain = vdso_info.chain[chain]) {
If vdso_info can't be parsed correctly, vdso_info.nbucket might contain zero. Add a check and return NULL which will fail the symbol lookup. Signed-off-by: Sven Schnelle <svens@linux.ibm.com> --- tools/testing/selftests/vDSO/parse_vdso.c | 3 +++ 1 file changed, 3 insertions(+)