From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.2 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id AE0E7C433E0 for ; Tue, 2 Feb 2021 01:32:52 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id E677064DD6 for ; Tue, 2 Feb 2021 01:32:51 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E677064DD6 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=loongson.cn Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 6A9BF6B0005; Mon, 1 Feb 2021 20:32:51 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 65A766B0006; Mon, 1 Feb 2021 20:32:51 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 56F736B006E; Mon, 1 Feb 2021 20:32:51 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0005.hostedemail.com [216.40.44.5]) by kanga.kvack.org (Postfix) with ESMTP id 40BCA6B0005 for ; Mon, 1 Feb 2021 20:32:51 -0500 (EST) Received: from smtpin09.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id 04AAB8249980 for ; Tue, 2 Feb 2021 01:32:51 +0000 (UTC) X-FDA: 77771603742.09.teeth87_0a0b274275c6 Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin09.hostedemail.com (Postfix) with ESMTP id E0047180AD81A for ; Tue, 2 Feb 2021 01:32:50 +0000 (UTC) X-HE-Tag: teeth87_0a0b274275c6 X-Filterd-Recvd-Size: 4413 Received: from loongson.cn (mail.loongson.cn [114.242.206.163]) by imf34.hostedemail.com (Postfix) with ESMTP for ; Tue, 2 Feb 2021 01:32:48 +0000 (UTC) Received: from ambrosehua-HP-xw6600-Workstation (unknown [222.209.8.92]) by mail.loongson.cn (Coremail) with SMTP id AQAAf9Ax6dWvqxhg55gBAA--.961S2; Tue, 02 Feb 2021 09:32:33 +0800 (CST) Date: Tue, 2 Feb 2021 09:32:31 +0800 From: Huang Pei To: Thomas Bogendoerfer Cc: ambrosehua@gmail.com, Bibo Mao , Andrew Morton , linux-mips@vger.kernel.org, linux-arch@vger.kernel.org, linux-mm@kvack.org, Jiaxun Yang , Paul Burton , Li Xuefeng , Yang Tiezhu , Gao Juxin , Fuxin Zhang , Huacai Chen Subject: Re: [PATCH] MIPS: fix kernel_stack_pointer() Message-ID: <20210202013231.wzyb7clsu7jsze4v@ambrosehua-HP-xw6600-Workstation> References: <20210129043507.30488-1-huangpei@loongson.cn> <20210201122352.GA8095@alpha.franken.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20210201122352.GA8095@alpha.franken.de> User-Agent: NeoMutt/20171215 X-CM-TRANSID:AQAAf9Ax6dWvqxhg55gBAA--.961S2 X-Coremail-Antispam: 1UD129KBjvJXoW7CFWUGryUJrWDCr47Kw17KFg_yoW8Ar4fpF ZFy3Z5KFWkKryUGF9rJaySkr1ayrs8GrZ8KFW5JrW7WF9xXF1DXryxGr45Awn7Crsrta48 XFWaq3s8CFW7ZaDanT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUUvE14x267AKxVW8JVW5JwAFc2x0x2IEx4CE42xK8VAvwI8IcIk0 rVWrJVCq3wAFIxvE14AKwVWUJVWUGwA2ocxC64kIII0Yj41l84x0c7CEw4AK67xGY2AK02 1l84ACjcxK6xIIjxv20xvE14v26F1j6w1UM28EF7xvwVC0I7IYx2IY6xkF7I0E14v26r4U JVWxJr1l84ACjcxK6I8E87Iv67AKxVW8Jr0_Cr1UM28EF7xvwVC2z280aVCY1x0267AKxV W8Jr0_Cr1UM2AIxVAIcxkEcVAq07x20xvEncxIr21l5I8CrVACY4xI64kE6c02F40Ex7xf McIj6xIIjxv20xvE14v26r1j6r18McIj6I8E87Iv67AKxVWUJVW8JwAm72CE4IkC6x0Yz7 v_Jr0_Gr1lF7xvr2IY64vIr41lF7I21c0EjII2zVCS5cI20VAGYxC7M4IIrI8v6xkF7I0E 8cxan2IY04v7MxkIecxEwVAFwVWkMxAIw28IcxkI7VAKI48JMxC20s026xCaFVCjc4AY6r 1j6r4UMI8I3I0E5I8CrVAFwI0_Jr0_Jr4lx2IqxVCjr7xvwVAFwI0_JrI_JrWlx4CE17CE b7AF67AKxVWUtVW8ZwCIc40Y0x0EwIxGrwCI42IY6xIIjxv20xvE14v26r1j6r1xMIIF0x vE2Ix0cI8IcVCY1x0267AKxVW8JVWxJwCI42IY6xAIw20EY4v20xvaj40_WFyUJVCq3wCI 42IY6I8E87Iv67AKxVWUJVW8JwCI42IY6I8E87Iv6xkF7I0E14v26r4j6r4UJbIYCTnIWI evJa73UjIFyTuYvjfUOMKZDUUUU X-CM-SenderInfo: xkxd0whshlqz5rrqw2lrqou0/ X-Bogosity: Ham, tests=bogofilter, spamicity=0.002615, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Mon, Feb 01, 2021 at 01:23:52PM +0100, Thomas Bogendoerfer wrote: > On Fri, Jan 29, 2021 at 12:35:07PM +0800, Huang Pei wrote: > > MIPS always save kernel stack pointer in regs[29] > > > > Signed-off-by: Huang Pei > > --- > > arch/mips/include/asm/ptrace.h | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/arch/mips/include/asm/ptrace.h b/arch/mips/include/asm/ptrace.h > > index 1e76774b36dd..daf3cf244ea9 100644 > > --- a/arch/mips/include/asm/ptrace.h > > +++ b/arch/mips/include/asm/ptrace.h > > @@ -53,7 +53,7 @@ struct pt_regs { > > > > static inline unsigned long kernel_stack_pointer(struct pt_regs *regs) > > { > > - return regs->regs[31]; > > + return regs->regs[29]; > > hmm, I'm still wondering where the trick is... looks like this is used > for uprobes, so nobody has ever used uprobes or I'm missing something. > > How did you find that ? > > Thomas. > > -- > Crap can work. Given enough thrust pigs will fly, but it's not necessarily a > good idea. [ RFC1925, 2.3 ] Long story for short, +. I think I had fix this bug in 2018, when I backported Uprobe from my 4.4 branch to CentOS 7 3.10. I just knwo it is *not* following MIPS ABI, but I do not know how it destroy the cool function of Kprobe/Uprobe, since the failure in porting eBPF from upstream to 3.10 just leave the fix in 3.10, totally forgotten. +. In 2020, I was told to validate the effect of GNU XHash, and it came to me that using Uprobe to count the number of "strcmp" called in ld.so, so I found this fix again. +. With more work on Kprobe/Kprobe_event/Uprobe, I found it hit only when accessing arguments of Kprobe/Uprobe, so simple counting numbers of probe fired would not trigger it