Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CRASH: SIGSEGV in wrap_operators test in ci-clang workflow #2535

Open
xdje42 opened this issue Jan 14, 2025 · 0 comments
Open

CRASH: SIGSEGV in wrap_operators test in ci-clang workflow #2535

xdje42 opened this issue Jan 14, 2025 · 0 comments

Comments

@xdje42
Copy link
Contributor

xdje42 commented Jan 14, 2025

Describe the bug

The wrap_operators test is failing in the ci-clang workflow.

2025-01-13T22:46:36.1901584Z 46: ~~Dr.M~~ Dr. Memory version 2.6.20101
2025-01-13T22:46:36.1902071Z 46: <spurious rep/repne prefix @0x7383f716 (f3 0f 1e fb): >
2025-01-13T22:46:36.1903523Z 46: <Application /home/runner/work/drmemory/drmemory/build_drmemory-dbg-32/tests/operators (43383).  Dr. Memory internal crash at PC
 0xf7ac5c4e.  Please report this at http://drmemory.org/issues.  Program aborted.
2025-01-13T22:46:36.1905140Z 46: Received SIGSEGV at pc 0xf7ac5c4e in thread 43383
2025-01-13T22:46:36.1905615Z 46: Base: 0xf7b1a000
2025-01-13T22:46:36.1906068Z 46: Registers:eax=0x00000001 ebx=0xf7ad0000 ecx=0x464c4000 edx=0x00000000
2025-01-13T22:46:36.1906711Z 46:        esi=0x464c4583 edi=0x4336ad68 esp=0x432134d0 ebp=0xf7ad40e4
2025-01-13T22:46:36.1907190Z 46:        eflags=0x00010202
2025-01-13T22:46:36.1907507Z 46: 2.6.20101-1-(Jan 13 2025 22:45:29) 
2025-01-13T22:46:36.1909547Z 46: -no_dynamic_options -logdir '/home/runner/work/drmemory/drmemory/build_drmemory-dbg-32/logs/dynamorio' -checklevel 0 -client_lib '/home/runner/work/drmemory/drmemory/build_drmemory-dbg-32/bin/debug/libdrmemorylib.so;0;`-batch` `-callstack_style` `0x27` -no_results_to_stderr `-no_replace_malloc` `-no_count_leaks` -logdir 
2025-01-13T22:46:36.1911575Z 46: 0xf7ad40e4 0x4336a000>
...
2025-01-13T22:46:36.1990526Z       Test  #46: wrap_operators ....................***Failed    1.20 sec

ref: ci-clang workflow in #2532

To Reproduce

Submit a PR and study the ci-clang workflow test output.

Versions

HEAD as of commit f62daf1
OS: Test output reports Ubuntu 20.04.6

derekbruening pushed a commit that referenced this issue Jan 15, 2025
…2526)

The definition of strcasestr is

char *strcasestr(const char *text, const char *pattern);

but drmemory uses

const char *strcasestr(const char *text, const char *pattern);

This causes build errors when both /usr/include/string.h and
common/utils.h are included in linux. The definition for strcasestr for
C has always not had the `const` in the result type (going back to its
original addition to glibc in 1997). Thus we're pretty safe in not
breaking anything on *nix. The other main use case of drmemory's
strcasestr is on Windows, which does not have strcasestr.

Tested:
$ cmake && make
Also, there are failures in the clang and x86 workflows, but comparing
the logs before/after
shows all failures pre-exist this patch, no new failures.

Here is the complete audit, all failures are pre-existing.

Recorded (errantly) as i#1938 failures:
  - wrap_operators: "internal crash" (Received SIGSEGV)
    - filed as #2535
  - wrap_cs2bug: CHECK_TRUNCATE_TYPE_sbyte(new_offs) (#2342)
- pcache-use: "Usage error: meta-instr faulted? must set translation
field and handle fault!" (#2202)
  - app_suite: vsyscall incorrect assumption (#2491)
- app_suite.pattern: assert failure: save->ignore_next_delete == 0
(premature deletion)
    - filed as i#2537
  - fuzz_threads: vsyscall incorrect assumption (#2491)

Note: The above are marked as expected failures but [runsuite_wrapper.pl
hardwires the addition of "i#1938" to test
output](https://github.com/DynamoRIO/drmemory/blob/master/tests/runsuite_wrapper.pl#L281).
#2534

Not currently recorded as expected failures (all #2491 - vsyscall
incorrect assumption):
  - selfmod
  - syscalls_unix
  - clone
  - pthread_test
  - realloc

Fixes #2522
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant