https://bugs.winehq.org/show_bug.cgi?id=48291
David Torok dt@zeroitlab.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dt@zeroitlab.com
--- Comment #36 from David Torok dt@zeroitlab.com --- Created attachment 66143 --> https://bugs.winehq.org/attachment.cgi?id=66143 seccomp filter to trap based on the program counter value
@Paul Gofman : Thank you for your work on x64 syscall emulation! I would like to discuss your approach a bit further to hopefully generalize this idea. I see you incremented the syscall numbers in the nt syscall thunks and subtracted accordingly before the dispatcher. My understanding is that this will not work in cases where the application looks up the NT build (from the PEB for instance) and uses a syscall number based on the build information. (Examples include Red Dead Redemption 2, similar issue: https://bugs.winehq.org/show_bug.cgi?id=47198 )
Assuming that my thinking is correct, we would need to set the syscall numbers accordingly in wine, which results in conflicts with linux syscall numbers. I've been thinking about ways to go about this, and thought we could rewrite the seccomp filter to trap only on virtual addresses outside of glibc. (see the attachment)
What are your thoughts, would that work well for us?