Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932103AbbL0Nkh (ORCPT ); Sun, 27 Dec 2015 08:40:37 -0500 Received: from mail-ob0-f180.google.com ([209.85.214.180]:35132 "EHLO mail-ob0-f180.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755024AbbL0Nke (ORCPT ); Sun, 27 Dec 2015 08:40:34 -0500 MIME-Version: 1.0 In-Reply-To: <20151227133330.GA20823@nazgul.tnic> References: <20151226103252.GA21988@pd.tnic> <20151227100919.GA19398@nazgul.tnic> <6c0b3214-f120-47ee-b7fe-677b4f27f039@email.android.com> <20151227133330.GA20823@nazgul.tnic> From: Andy Lutomirski Date: Sun, 27 Dec 2015 05:40:14 -0800 Message-ID: Subject: Re: [PATCHV5 3/3] x86, ras: Add __mcsafe_copy() function to recover from machine checks To: Borislav Petkov Cc: Tony Luck , linux-nvdimm , X86 ML , "elliott@hpe.com" , "linux-mm@kvack.org" , Andrew Morton , "Williams, Dan J" , Ingo Molnar , "linux-kernel@vger.kernel.org" Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1727 Lines: 47 On Sun, Dec 27, 2015 at 5:33 AM, Borislav Petkov wrote: > On Sun, Dec 27, 2015 at 05:25:45AM -0800, Andy Lutomirski wrote: >> That could significantly bloat the kernel image. > > Yeah, we probably should build an allyesconfig and see how big > __ex_table is and compute how much actually that bloat would be, > because... > >> Anyway, the bit 31 game isn't so bad IMO because it's localized to the >> extable macros and the extable reader, whereas the bit 63 thing is all >> tangled up with the __mcsafe_copy thing, and that's just the first >> user of a more general mechanism. >> >> Did you see this: >> >> https://git.kernel.org/cgit/linux/kernel/git/luto/linux.git/commit/?h=strict_uaccess_fixups/patch_v1&id=16644d9460fc6531456cf510d5efc57f89e5cd34 > > ... the problem this has is that you have 4 classes, AFAICT. And since > we're talking about a generic mechanism, the moment the 4 classes are > not enough, this new scheme fails. > > I'm just saying... > > 4 classes are probably more than enough but we don't know. On whatever kernel I just built (defconfig-ish), __ex_table is about 12kB, so the bloat would be 6 kB. In any case, I can think of a total of three useful classes: 0: normal 1: extended (indirect block with fanciness, as I proposed) 2: uaccess (some day, not yet) For rare future things, we could shoehorn them into the extended version's indirect block. Or someone could think of a clever encoding that makes this work better. --Andy -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/