Messages in this thread | | | Subject | Re: [PATCHv2] x86/mm: set x32 syscall bit in SET_PERSONALITY() | From | Dmitry Safonov <> | Date | Tue, 21 Mar 2017 22:19:01 +0300 |
| |
On 03/21/2017 09:40 PM, Cyrill Gorcunov wrote: > On Tue, Mar 21, 2017 at 09:09:40PM +0300, Dmitry Safonov wrote: >> >> I guess the question comes from that we're releasing CRIU 3.0 with >> 32-bit C/R and some other cool stuff, but we don't support x32 yet. >> As we don't want release a thing that we aren't properly testing. >> So for a while we should error on dumping x32 applications. > > yes > >> I think, the best way for now is to check physicall address of vdso >> from /proc/.../pagemap. If it's CONFIG_VDSO=n kernel, I guess we could >> also add check for %ds from ptrace's register set. For x32 it's set to >> __USER_DS, while for native it's 0 (looking at start_thread() and >> compat_start_thread()). The application can simply change it without >> any consequence - so it's not very reliable, we could only warn at >> catching it, not rely on this. > > indeed, thanks!
Also, even more simple-minded: for now we could just check binary magic from /proc/.../exe, for now stopping on x32 binaries.
-- Dmitry
| |