From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1761270AbdEWFtN (ORCPT ); Tue, 23 May 2017 01:49:13 -0400 Received: from mail-wr0-f194.google.com ([209.85.128.194]:33975 "EHLO mail-wr0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757522AbdEWFtK (ORCPT ); Tue, 23 May 2017 01:49:10 -0400 Date: Tue, 23 May 2017 07:49:06 +0200 From: Ingo Molnar To: "H. Peter Anvin" Cc: Josh Poimboeuf , linux-kernel@vger.kernel.org, Jiri Slaby , Andrew Morton , live-patching@vger.kernel.org, Thomas Gleixner , Ingo Molnar , the arch/x86 maintainers , Andy Lutomirski , Jiri Kosina , Linus Torvalds , "H. Peter Anvin" , Peter Zijlstra Subject: Re: [PATCH 7/7] DWARF: add the config option Message-ID: <20170523054906.q2x2hib73fo7wibh@gmail.com> References: <20170505122200.31436-1-jslaby@suse.cz> <20170505122200.31436-7-jslaby@suse.cz> <20170507165524.cdxfuwbd5alr7v6k@treble> <20170519205354.caeyqri2k6gvso3w@treble> <8dbbb971-fc41-fba2-f356-931a7eabe6ef@zytor.com> <20170519212913.otir6mlujoxoy3ha@treble> <20170522111248.q74jgpqlwxl5oby7@gmail.com> <0192326e-2abc-5bc2-07c9-fa15f2e31372@zytor.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <0192326e-2abc-5bc2-07c9-fa15f2e31372@zytor.com> User-Agent: NeoMutt/20170113 (1.7.2) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org * H. Peter Anvin wrote: > On 05/22/17 04:12, Ingo Molnar wrote: > \>> > >> This construct might be useful for other arches, which is why I called > >> it "FP" instead of "BP". But then I ruined that with the last 3 :-) > > > > Please call it BP - 'FP' can easily be read as floating-point, making it all > > super-confusing. We should use canonical x86 register names and ordering - even > > if not all registers are used straight away. > > > > Seriously, I suspect that at the end of the day we will have reinvented > DWARF. Absolutely - the main difference is: - the debug-info implementation is _internal_ to the kernel so it can be fixed instead of "oh, wait 2 years for the toolchain to fix this particular bug, work it around in the kernel meanwhile" kind of crazy flow and dependencies. I.e. the debug-info generation and parsing code is both part of the kernel Git tree and can be iterated (and fixed) at once with. - the debug-info is auto-generated for assembly as well, leaving assembly code maintainable. - the debug-info has a sane data structure designed for robustness and compactness So even if it's a subset of the existing complexity of dwarf et al we are still literally infinitely better off with this model. Thanks, Ingo