All of lore.kernel.org
 help / color / mirror / Atom feed
From: Oleg Nesterov <oleg@redhat.com>
To: Yonghong Song <yhs@fb.com>
Cc: mingo@kernel.org, tglx@linutronix.de, peterz@infradead.org,
	linux-kernel@vger.kernel.org, x86@kernel.org,
	netdev@vger.kernel.org, ast@fb.com, kernel-team@fb.com
Subject: Re: [PATCH][v4] uprobes/x86: emulate push insns for uprobe on x86
Date: Fri, 17 Nov 2017 18:25:26 +0100	[thread overview]
Message-ID: <20171117172526.GA10949@redhat.com> (raw)
In-Reply-To: <20171115175928.3821714-1-yhs@fb.com>

On 11/15, Yonghong Song wrote:
>
> v3 -> v4:
>   . Revert most of v3 change as 32bit emulation is not really working
>     on x86_64 platform as among other issues, function emulate_push_stack()
>     needs to account for 32bit app on 64bit platform.
>     A separate effort is ongoing to address this issue.

Reviewed-by: Oleg Nesterov <oleg@redhat.com>



Please test your patch with the fix below, in this particular case the
TIF_IA32 check should be fine. Although this is not what we really want,
we should probably use user_64bit_mode(regs) which checks ->cs. But this
needs more changes and doesn't solve other problems (get_unmapped_area)
so I still can't decide what should we do right now...

Oleg.

--- a/arch/x86/kernel/uprobes.c
+++ b/arch/x86/kernel/uprobes.c
@@ -516,7 +516,7 @@ struct uprobe_xol_ops {
 
 static inline int sizeof_long(void)
 {
-	return in_ia32_syscall() ? 4 : 8;
+	return test_thread_flag(TIF_IA32) ? 4 : 8;
 }
 
 static int default_pre_xol_op(struct arch_uprobe *auprobe, struct pt_regs *regs)

  reply	other threads:[~2017-11-17 17:25 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-15 17:59 [PATCH][v4] uprobes/x86: emulate push insns for uprobe on x86 Yonghong Song
2017-11-17 17:25 ` Oleg Nesterov [this message]
2017-11-17 18:12   ` Yonghong Song
2017-11-20 16:41     ` Oleg Nesterov
2017-11-20 18:25       ` Yonghong Song
2017-11-27 18:06         ` Yonghong Song

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20171117172526.GA10949@redhat.com \
    --to=oleg@redhat.com \
    --cc=ast@fb.com \
    --cc=kernel-team@fb.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=peterz@infradead.org \
    --cc=tglx@linutronix.de \
    --cc=x86@kernel.org \
    --cc=yhs@fb.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.