diff options
author | Florian Weimer <fweimer@redhat.com> | 2022-01-17 09:57:19 +0100 |
---|---|---|
committer | Florian Weimer <fweimer@redhat.com> | 2022-01-17 09:58:27 +0100 |
commit | 06200aac9bec34dbcac28b8c60e49a77e7851c1f (patch) | |
tree | 30bd63a33805249199a7501972d64c06f2868145 /elf/tst-dl_find_object.c | |
parent | 8eb2510d38226ce10a3a15109be948f052585106 (diff) | |
download | glibc-06200aac9bec34dbcac28b8c60e49a77e7851c1f.tar.gz glibc-06200aac9bec34dbcac28b8c60e49a77e7851c1f.tar.xz glibc-06200aac9bec34dbcac28b8c60e49a77e7851c1f.zip |
elf/tst-dl_find_object: Disable subtests for non-contiguous maps (bug 28732)
Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
Diffstat (limited to 'elf/tst-dl_find_object.c')
-rw-r--r-- | elf/tst-dl_find_object.c | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/elf/tst-dl_find_object.c b/elf/tst-dl_find_object.c index 855d0fc735..6d2a2ffd1c 100644 --- a/elf/tst-dl_find_object.c +++ b/elf/tst-dl_find_object.c @@ -71,19 +71,24 @@ check (void *address, __FILE__, line, address, actual.dlfo_flags, expected->dlfo_flags); } - if (actual.dlfo_flags != expected->dlfo_flags) + if (expected->dlfo_link_map->l_contiguous) { - support_record_failure (); - printf ("%s:%d: error: %p: map start is %p, expected %p\n", - __FILE__, line, - address, actual.dlfo_map_start, expected->dlfo_map_start); - } - if (actual.dlfo_map_end != expected->dlfo_map_end) - { - support_record_failure (); - printf ("%s:%d: error: %p: map end is %p, expected %p\n", - __FILE__, line, - address, actual.dlfo_map_end, expected->dlfo_map_end); + /* If the mappings are not contiguous, the actual and execpted + mappings may differ, so this subtest will not work. */ + if (actual.dlfo_flags != expected->dlfo_flags) + { + support_record_failure (); + printf ("%s:%d: error: %p: map start is %p, expected %p\n", + __FILE__, line, + address, actual.dlfo_map_start, expected->dlfo_map_start); + } + if (actual.dlfo_map_end != expected->dlfo_map_end) + { + support_record_failure (); + printf ("%s:%d: error: %p: map end is %p, expected %p\n", + __FILE__, line, + address, actual.dlfo_map_end, expected->dlfo_map_end); + } } if (actual.dlfo_link_map != expected->dlfo_link_map) { |