DynamoRIO / DynamoRIO/drmemory

Make it easier for client to generate syscall files for drsyscall

Open
#2,279 0 comments 0 reactions 0 assignees View on GitHub
Component-DrSyscall Type-Feature Usability
Dominant language
C
Stars
2.7k
Forks
290
PR merge metrics
No merged PRs in 30d

Description

#1848 added auto-generation of syscall number files to Dr. Memory. But since it requires libraries that do not work well in clients, it has to be done from a frontend. But since drsyscall's initialization to figure out whether the current kernel needs auto-generation does not work from standalone mode (it uses module_data_t for ntdll to check syscall numbers, for one thing), Dr. Memory launches the app and if the client exits with a certain exit code, the frontend generates a syscall file and re-launches. We then copied this approach for drstrace and drltrace.

This is not very user-friendly. Consider #2273 where for our own tests it is a pain to operate on recent Win10 machines. This issue covers coming up with a better solution. One simple step would be to get the drsyscall check for whether to generate to work in standalone mode and then provide a version of drrun with it baked in? We should at least share generate_sysnum_file() as a drsyscall library routine.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.