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

Make it easier for client to generate syscall files for drsyscall #2279

Open
derekbruening opened this issue Mar 9, 2020 · 0 comments
Open

Comments

@derekbruening
Copy link
Contributor

#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.

derekbruening added a commit that referenced this issue Mar 9, 2020
Adds use of a sysnum file generated by a prior Dr. Memory test to the
drmf tests which use dryscall.  #2279 covers a better long-term solution.

Fixes #2273
derekbruening added a commit that referenced this issue Mar 9, 2020
Adds use of a sysnum file generated by a prior Dr. Memory test to the
drmf tests which use dryscall.  #2279 covers a better long-term solution.

Fixes #2273
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