Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751265AbdGMJ31 (ORCPT ); Thu, 13 Jul 2017 05:29:27 -0400 Received: from mail-wr0-f196.google.com ([209.85.128.196]:33239 "EHLO mail-wr0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750854AbdGMJ3Z (ORCPT ); Thu, 13 Jul 2017 05:29:25 -0400 Date: Thu, 13 Jul 2017 11:29:20 +0200 From: Ingo Molnar To: Josh Poimboeuf Cc: Andi Kleen , x86@kernel.org, linux-kernel@vger.kernel.org, live-patching@vger.kernel.org, Linus Torvalds , Andy Lutomirski , Jiri Slaby , "H. Peter Anvin" , Peter Zijlstra , Mike Galbraith , Thomas Gleixner , Peter Zijlstra Subject: Re: [PATCH v3 00/10] x86: ORC unwinder (previously undwarf) Message-ID: <20170713092920.ufw35tdn74so77zu@gmail.com> References: <87wp7dmgoo.fsf@firstfloor.org> <20170712224759.a32747n3oso245ij@treble> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20170712224759.a32747n3oso245ij@treble> User-Agent: NeoMutt/20170113 (1.7.2) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1645 Lines: 39 * Josh Poimboeuf wrote: > On Wed, Jul 12, 2017 at 03:30:31PM -0700, Andi Kleen wrote: > > Josh Poimboeuf writes: > > > > > > The ORC data format does have a few downsides compared to DWARF. The > > > ORC unwind tables take up ~1MB more memory than DWARF eh_frame tables. > > > > > Can we have an option to just use dwarf instead? For people > > who don't want to waste a MB+ to solve a problem that doesn't > > exist (as proven by many years of opensuse kernel experience) > > > > As far as I can tell this whole thing has only downsides compared > > to the dwarf unwinder that was earlier proposed. I don't see > > a single advantage. > > Improved speed, reliability, maintainability. Are those not advantages? Exactly, and all these advantages of the ORC debuginfo over DWARF debuginfo are enabled by an unwinding optimized data format that the kernel project generates, controls and is able to trust inherently. DWARF generated by external tooling can just never reach that level of trust, without insane amounts of formal verification. Even if ORC was _slower_ its reliability would be reason enough to merge. The fact that it's 20-40 times faster than the DWARF unwinder is really just icing on the cake. BTW., as a side note, (and I hope my optimism isn't premature), I believe the ORC unwinder is a prime example of where Linus's stubborness resisting poor concepts paid off in the long run: had we merged the DWARF unwinder years ago we'd never have gained the ORC unwinder. We quite literally had to wait over a decade, but good things happened in the end. Thanks, Ingo