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

ASSERT syscall number mismatch at init time in every 32-bit app on GA Server2016 #4587

Closed
derekbruening opened this issue Dec 5, 2020 · 0 comments · Fixed by #4589
Closed

Comments

@derekbruening
Copy link
Contributor

I believe this is the cause of the Dr. Memory 32-bit failures on GA: DynamoRIO/drmemory#2329

For #4131 I'm running DR's suite for the first time on GA's Server 2016 images and every 32-bit app hits this:

2020-12-05T20:33:55.1710455Z         Start  10: code_api|common.fib
2020-12-05T20:33:55.1710943Z 
2020-12-05T20:33:55.1712615Z 10: Test command: D:\a\dynamorio\dynamorio\build_debug-internal-32\bin32\drrun.exe "-s" "90" "-quiet" "-debug" "-use_dll" "D:/a/dynamorio/dynamorio/build_debug-internal-32/lib32/debug/dynamorio.dll" "-exit0" "-stderr_mask" "0xC" "-msgbox_mask" "0" "-dumpcore_mask" "0x7d" "-staged" "-no_early_inject" "-code_api" "--" "D:/a/dynamorio/dynamorio/build_debug-internal-32/suite/tests/bin/common.fib.exe"
2020-12-05T20:33:55.1714331Z 10: Test timeout computed to be: 600
2020-12-05T20:33:55.1966766Z 10: <Application D:\a\dynamorio\dynamorio\build_debug-internal-32\suite\tests\bin\common.fib.exe (4828).  Internal Error: DynamoRIO debug check failure: ..\core\win32\ntdll.c:624 (byte *)d_r_get_proc_address(ntdllh, syscall_names[i]) != NULL && (*((int *)(((byte *)d_r_get_proc_address(ntdllh, syscall_names[i])) + SYSNUM_OFFS)) == syscalls[i] || ALLOW_HOOKER((byte *)d_r_get_proc_address(ntdl
2020-12-05T20:33:55.1968682Z 10: version 8.0.18601, custom build
2020-12-05T20:33:55.1969101Z 10: 
2020-12-05T20:33:55.1969423Z 10: 0x00cfeff4 0x70a5c863
2020-12-05T20:33:55.1970270Z 10: 0x00cff128 0x70c6c832
2020-12-05T20:33:55.1970646Z 10: 0x00cff1ac 0x7099cf0f
2020-12-05T20:33:55.1971318Z 10: 0x00cffa68 0x70c0b4b1
2020-12-05T20:33:55.1971685Z 10: 0x00cffad0 0x70c0be18>
2020-12-05T20:33:55.1992810Z  10/282 Test  #10: code_api|common.fib ..........................................***Failed  Required 
@derekbruening derekbruening self-assigned this Dec 5, 2020
derekbruening added a commit that referenced this issue Dec 6, 2020
Uses the empirically-determined syscall numbers even for OS versions
we have in our static table, for win10-1511+.  We have seen variants
that our current version logic is not aware of, and we're using the
from-wrapper numbers on all very-recent versions anyway.

Issue: #4587, DynamoRIO/drmemory#2328
Fixes #4587
derekbruening added a commit that referenced this issue Dec 6, 2020
Uses the empirically-determined syscall numbers even for OS versions
we have in our static table, for win10-1511+.  We have seen variants
that our current version logic is not aware of, and we're using the
from-wrapper numbers on all very-recent versions anyway.

Issue: #4587, DynamoRIO/drmemory#2328
Fixes #4587
derekbruening added a commit to DynamoRIO/drmemory that referenced this issue Dec 6, 2020
Updates DR to 312d24d3 to pull in two key fixes for Dr. Memory on
Github Actions Windows Server 2016:

+ DynamoRIO/dynamorio#4588: Handle anomalous alloc bases in Windows
  query loop (DynamoRIO/dynamorio#4590)

+ DynamoRIO/dynamorio#4587: Use from-wrapper syscall numbers for all
  win10 (DynamoRIO/dynamorio#4589)

Fixes #2328
Fixes #2329
derekbruening added a commit to DynamoRIO/drmemory that referenced this issue Dec 6, 2020
Updates DR to 312d24d3 to pull in two key fixes for Dr. Memory on
Github Actions Windows Server 2016:

+ DynamoRIO/dynamorio#4588: Handle anomalous alloc bases in Windows
  query loop (DynamoRIO/dynamorio#4590)

+ DynamoRIO/dynamorio#4587: Use from-wrapper syscall numbers for all
  win10 (DynamoRIO/dynamorio#4589)

Fixes #2328
Fixes #2329
derekbruening added a commit that referenced this issue Dec 14, 2020
Uses the empirically-determined syscall numbers even for OS versions
we have in our static table, for win10-1511+.  We have seen variants
that our current version logic is not aware of, and we're using the
from-wrapper numbers on all very-recent versions anyway.

Issue: #4587, DynamoRIO/drmemory#2328
Fixes #4587
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant