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

drcov should fail up front on wrong-arch ELF data #1533

Closed
derekbruening opened this issue Nov 28, 2014 · 1 comment
Closed

drcov should fail up front on wrong-arch ELF data #1533

derekbruening opened this issue Nov 28, 2014 · 1 comment

Comments

@derekbruening
Copy link
Contributor

From [email protected] on August 29, 2014 16:28:22

bin32/drrun -t drcov -- /work/dr/test/hello
bin64/drrun -t drcov -- /work/dr/test/hello64
head drcov*.log
tools/bin32/drcov2lcov --dir . --output drcov.out

[DRCOV2LCOV] WARNING(1): Failed to enumerate lines for /work/dr/build_package/DynamoRIO-Linux-5.0.0-4/lib64/release/libdynamorio.so.5.0
[DRCOV2LCOV] WARNING(1): Failed to enumerate lines for /usr/lib64/libdl-2.18.so
[DRCOV2LCOV] WARNING(1): Failed to enumerate lines for /usr/lib64/ld-2.18.so
[DRCOV2LCOV] WARNING(1): Failed to enumerate lines for /usr/lib/libc-2.18.so
[DRCOV2LCOV] WARNING(1): Failed to enumerate lines for /work/dr/build_package/DynamoRIO-Linux-5.0.0-4/tools/lib64/release/libdrcov.so
[DRCOV2LCOV] WARNING(1): Failed to enumerate lines for /usr/lib/libdl-2.18.so
[DRCOV2LCOV] WARNING(1): Failed to enumerate lines for /usr/lib/libm-2.18.so
[DRCOV2LCOV] WARNING(1): Failed to enumerate lines for /work/dr/build_package/DynamoRIO-Linux-5.0.0-4/lib64/release/libdrpreload.so

drmemory/bin/symquery -e /work/dr/build_package/DynamoRIO-Linux-5.0.0-4/tools/lib64/release/libdrcov.so --lines | head -3cu="/work/dynamorio_package/clients/drcov/drcov.c", file="/work/dynamorio_package/clients/drcov/drcov.c" line=594, addr=0x1ef0
cu="/work/dynamorio_package/clients/drcov/drcov.c", file="/work/dynamorio_package/clients/drcov/drcov.c" line=598, addr=0x1ef0
cu="/work/dynamorio_package/clients/drcov/drcov.c", file="/work/dynamorio_package/clients/drcov/drcov.c" line=600, addr=0x1ef6

in drcov.out:
SF:/work/dynamorio_package/clients/drcov/drcov.c

no repro w/ local 32-bit build

the problem is that I ran both 32 and 64
and the error is on the other bitwidth from the drcov2lcov that I run
so it asks drcov2lcov to process some log files, some 32 and some 64
and unix drsyms only handles its own bitwidth (issue #1532; Windows 64-bit handles both)
so should it give a fatal error on linux?

need to bump file ver# to add bitwidth to it.

**** TODO current ver check has 2 problems

  1. it does not even check the version (logic broken)

  2. if the logic were fixed, it would print a message ""Failed to read
    version number" on a version mismatch

Original issue: http://code.google.com/p/dynamorio/issues/detail?id=1533

@derekbruening
Copy link
Contributor Author

From [email protected] on August 30, 2014 21:28:34

This issue was closed by revision r2814 .

Status: Fixed

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

No branches or pull requests

1 participant