On Tue, Mar 21, 2017 at 11:05 AM, Cyrill Gorcunov <gorcunov@xxxxxxxxx> wrote: > /I renamed the mail's subject/ > > On Tue, Mar 21, 2017 at 10:45:57AM -0700, Andy Lutomirski wrote: >> >> + task_pt_regs(current)->orig_ax |= __X32_SYSCALL_BIT; >> >> current->thread.status &= ~TS_COMPAT; >> > >> > Hi! I must admit I didn't follow close the overall series (so can't >> > comment much here :) but I have a slightly unrelated question -- is >> > there a way to figure out if task is running in x32 mode say with >> > some ptrace or procfs sign? >> >> You should be able to figure out of a *syscall* is x32 by simply >> looking at bit 30 in the syscall number. (This is unlike i386, which >> is currently not reflected in ptrace.) > > Yes, syscall number will help but from criu perpspective (until > Dima's patches are merged into mainlie) we need to figure out > if we can dump x32 tasks without running parasite code inside, > ie via plain ptrace call or some procfs output. But looks like > it's impossible for now. > >> Do we actually have an x32 per-task mode at all? If so, maybe we can >> just remove it on top of Dmitry's series. > > Don't think so, x32 should be set upon exec and without Dima's series > it is immutable I think. What I mean is: why should the kernel care about per-task X32 state *at all*? On top of Dmitry's series, TIF_X32 appears to be used to determine which vDSO to map, which mm layout to use, *and nothing else*. Want to write a trivial patch to get rid of it entirely? Ideally we could get rid of mm->context.ia32_compat, too. The only interesting use it has is MPX, and we should probably instead track mm->context.mpx_layout and determine *that* from the prctl() bitness. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>