Re: [PATCHv2] x86/mm: set x32 syscall bit in SET_PERSONALITY()

From: Cyrill Gorcunov
Date: Tue Mar 21 2017 - 14:43:39 EST


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!