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=-0.9 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_PASS 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 6E8A5C04A6B for ; Mon, 6 May 2019 13:56:38 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 3E276206BF for ; Mon, 6 May 2019 13:56:38 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726249AbfEFN4h convert rfc822-to-8bit (ORCPT ); Mon, 6 May 2019 09:56:37 -0400 Received: from mail.kernel.org ([198.145.29.99]:57964 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725853AbfEFN4g (ORCPT ); Mon, 6 May 2019 09:56:36 -0400 Received: from gandalf.local.home (cpe-66-24-58-225.stny.res.rr.com [66.24.58.225]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 8EEB02054F; Mon, 6 May 2019 13:56:32 +0000 (UTC) Date: Mon, 6 May 2019 09:56:31 -0400 From: Steven Rostedt To: Peter Zijlstra Cc: Linus Torvalds , Andy Lutomirski , Linux List Kernel Mailing , Ingo Molnar , Andrew Morton , Andy Lutomirski , Nicolai Stange , Thomas Gleixner , Ingo Molnar , Borislav Petkov , "H. Peter Anvin" , the arch/x86 maintainers , Josh Poimboeuf , Jiri Kosina , Miroslav Benes , Petr Mladek , Joe Lawrence , Shuah Khan , Konrad Rzeszutek Wilk , Tim Chen , Sebastian Andrzej Siewior , Mimi Zohar , Juergen Gross , Nick Desaulniers , Nayna Jain , Masahiro Yamada , Joerg Roedel , "open list:KERNEL SELFTEST FRAMEWORK" , stable Subject: Re: [RFC][PATCH 1/2] x86: Allow breakpoints to emulate call functions Message-ID: <20190506095631.6f71ad7c@gandalf.local.home> In-Reply-To: <20190506081951.GJ2606@hirez.programming.kicks-ass.net> References: <20190502181811.GY2623@hirez.programming.kicks-ass.net> <20190502202146.GZ2623@hirez.programming.kicks-ass.net> <20190502185225.0cdfc8bc@gandalf.local.home> <20190502193129.664c5b2e@gandalf.local.home> <20190502195052.0af473cf@gandalf.local.home> <20190503092959.GB2623@hirez.programming.kicks-ass.net> <20190503092247.20cc1ff0@gandalf.local.home> <2045370D-38D8-406C-9E94-C1D483E232C9@amacapital.net> <20190506081951.GJ2606@hirez.programming.kicks-ass.net> X-Mailer: Claws Mail 3.17.3 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 6 May 2019 10:19:51 +0200 Peter Zijlstra wrote: > On Fri, May 03, 2019 at 11:57:22AM -0700, Linus Torvalds wrote: > > On Fri, May 3, 2019 at 9:21 AM Andy Lutomirski wrote: > > > > > > So here’s a somewhat nutty suggestion: how about we tweak the 32-bit > > > entry code to emulate the sane 64-bit frame, not just for int3 but > > > always? > > > > What would the code actually end up looking like? I don't necessarily > > object, since that kernel_stack_pointer() thing certainly looks > > horrible, but honestly, my suggestion to just pass in the 'struct > > pt_regs' and let the call emulation fix it up would have also worked, > > and avoided that bug (and who knows what else might be hiding). > > > > I really think that you're now hitting all the special case magic > > low-level crap that I wanted to avoid. > > This did actually boot on first try; so there must be something horribly > wrong... > > Now, I know you like that other approach; but I figured I should at > least show you what this one looks like. Maybe I've been staring at > entry_32.S too much, but I really don't dislike this. I can test this too. I was hoping to get this in by this merge window. I spent 3 hours yesterday trying to get Linus's version working on i386 with no success. Not sure how much time Linus will have to look at this, as he just opened the merge window. Again, I think Peter's solution here is the more elegant one. But as long as we get *a* solution, I'll be happy. And my time to work on it has pretty much already been depleted. -- Steve