Received: by 2002:a05:622a:1442:b0:3a5:28ea:c4b9 with SMTP id v2csp553946qtx; Thu, 3 Nov 2022 06:48:45 -0700 (PDT) X-Google-Smtp-Source: AMsMyM4AH4BpSDTaBqMy128DZxMdE7hbV+JvJiezV/fZJjXR3WcOIQlmZYTZIqQJ/mPgcyDF0mi9 X-Received: by 2002:a17:906:4f82:b0:7ad:c7d6:eee5 with SMTP id o2-20020a1709064f8200b007adc7d6eee5mr23038920eju.681.1667483324683; Thu, 03 Nov 2022 06:48:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1667483324; cv=none; d=google.com; s=arc-20160816; b=qj81hFjvtjPxwy5halPJav5js2r4zcQFHMjw7WmgKzMNYeC3zY7GksVu8edh1KsOq3 uD99u2zgKZE6Vq2QYfJgklST6YrJNzLF02Z2ZNOE0a9xMsUbqPb+ZhAthKXDshHo7KDD V3bhuEMmPA0Mf0yn7yUsMtZvmyOSN5B+uy4D0y7u+evnMoxV2Ho4xTK6DD4uX29hWIq6 x10JLYiBs8II5RWhdD5uN7vz+aD0hXeIzaGWRrOsx7btCTBo75MrL6r8JyBF8sGHwiTO XzYSw4LesKckbE6YQJkGHQzHm+YNNy502Lp84IDyenmlaDmo0r4kBOJIWUmX4ghx+FF0 bmHQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=irdq3O1lb1JnKN7Ou++KN+Z8sVxUlbpeb3a7cIB0eQQ=; b=O4QVO3dfYGXUQQuHfOKkbLP4NUrryYZXffByZCwJYLBzrfY2NbG7WF4IT1fGqEZrn9 HtfYulu6HZyNrfsuKRZtb3nAXNNkm4YWbkqKO+RKEbesQzY2QC5ZpY1y07lWCKwNON0j g0SoJSFyEBQNv29omvMtvh3zIwFpFvbm+88vCq0Tf6ED672rE7E/HksJ3HcK/UXU7vXb fiY3Ua53tTZ1WKDG1gU3//usBnNl70wTRDoK8A2EELyj8IeHZwkzmRDLiIKkhLD5uGqy tnKWHQqFl0qYSBny1zO92TUSK+5NKoNGRxofsgcAEQF+dwJj51AxuBii0GHPNCd8Vn/p wlRg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b="o/fMkgQ5"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id gt18-20020a1709072d9200b007a31138203asi1394080ejc.669.2022.11.03.06.48.16; Thu, 03 Nov 2022 06:48:44 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b="o/fMkgQ5"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230460AbiKCNiL (ORCPT + 97 others); Thu, 3 Nov 2022 09:38:11 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39660 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231538AbiKCNiG (ORCPT ); Thu, 3 Nov 2022 09:38:06 -0400 Received: from mail-yb1-xb29.google.com (mail-yb1-xb29.google.com [IPv6:2607:f8b0:4864:20::b29]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id BDB9765E3 for ; Thu, 3 Nov 2022 06:38:05 -0700 (PDT) Received: by mail-yb1-xb29.google.com with SMTP id y72so2185744yby.13 for ; Thu, 03 Nov 2022 06:38:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=irdq3O1lb1JnKN7Ou++KN+Z8sVxUlbpeb3a7cIB0eQQ=; b=o/fMkgQ5UYq51vh/qMdPxWEylbuwGtGO/YZZmj7l6K7HWDaO2vAMIlxHaHYZVOSx71 XhtxKINlPZFwcduDZm6t/CdGqB9Hk/LRDOq4uVVvF6mmIrYd+Nb17CCcrs6UDerMZKfL m0uodRGlqLEf46jV9v0CUxfxOMZiAabKxBUQtorTofUVILUa6Y95+CI8bf7y+i2qWjVw BSi7Da8u13851yldVhJAQCuo1zQl7jlN4QAaLNRMvp+PltM4CrtOlHOm2Ml038ez46zn am52kuM+sOnBufTnZ8QJ/wnSgwheaxjhpmQGIHjefqnTYeW27Uay3voojkfRsHqH1VoS O22Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=irdq3O1lb1JnKN7Ou++KN+Z8sVxUlbpeb3a7cIB0eQQ=; b=nMyEARN4PO4pykkHQ0/vtLhRtvOKr4lEtSX3vKSfQv8I4xxaKzRWVsWijBNaQ0wzhL a+kqmqPfwEoVzxNA+O5vsmZlrVS/DaPGldRYf2AV0OF98BZtCI9xjiSS5i6gsaMOGdK4 1bbgKroM+dBcBfvQrhPg7m2rOpm/Hd2SmA245Z7NR0kh/ku4qfWqFG/sFSPlsVUCvB+U MueOMw0HsS7jTrdruxeUrzlotHlf9RfYyDhLU8x67huYPLxbFoGuu2w9NUmEmYfeMcA5 Opi5r5LYjyzQJ1fSRxK5GNH607MaL4B8O2fJ8h+1v3dOYrbX6TxB5QKu0Z/XxdlwWf8M DoPQ== X-Gm-Message-State: ACrzQf2Crouh4qshWXYeX3shyovp/YLVYBXNdE6eO7qEQFX7U02D8cE2 zwSpdl1WPkdwtZ8XkNqvhWtDJhLb1RDp8i1hVl+Nsh1DQeY= X-Received: by 2002:a25:e80d:0:b0:6cb:a59c:541b with SMTP id k13-20020a25e80d000000b006cba59c541bmr27765396ybd.388.1667482684769; Thu, 03 Nov 2022 06:38:04 -0700 (PDT) MIME-Version: 1.0 References: <20221102110611.1085175-1-glider@google.com> <20221102110611.1085175-5-glider@google.com> In-Reply-To: From: Alexander Potapenko Date: Thu, 3 Nov 2022 14:37:28 +0100 Message-ID: Subject: Re: [PATCH 5/5] x86/traps: avoid KMSAN bugs originating from handle_bug() To: Peter Zijlstra Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, Andrew Morton , Borislav Petkov , Dave Hansen , Ingo Molnar , Thomas Gleixner , x86@kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-17.6 required=5.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF, ENV_AND_HDR_SPF_MATCH,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS, USER_IN_DEF_DKIM_WL,USER_IN_DEF_SPF_WL autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Nov 3, 2022 at 12:18 PM Peter Zijlstra wrote= : > > On Wed, Nov 02, 2022 at 12:06:11PM +0100, Alexander Potapenko wrote: > > > diff --git a/arch/x86/kernel/traps.c b/arch/x86/kernel/traps.c > > index 178015a820f08..d3fdec706f1d2 100644 > > --- a/arch/x86/kernel/traps.c > > +++ b/arch/x86/kernel/traps.c > > @@ -15,6 +15,7 @@ > > #include > > #include > > #include > > +#include > > #include > > #include > > #include > > @@ -301,6 +302,12 @@ static noinstr bool handle_bug(struct pt_regs *reg= s) > > { > > bool handled =3D false; > > > > + /* > > + * Normally @regs are unpoisoned by irqentry_enter(), but handle_= bug() > > + * is a rare case that uses @regs without passing them to > > + * irqentry_enter(). > > + */ > > + kmsan_unpoison_entry_regs(regs); > > if (!is_valid_bugaddr(regs->ip)) > > return handled; > > > > Should we place this kmsan_unpoison_entry_regs() after the > instrumentation_begin() ? Agreed, let me send an update. --=20 Alexander Potapenko Software Engineer Google Germany GmbH Erika-Mann-Stra=C3=9Fe, 33 80636 M=C3=BCnchen Gesch=C3=A4ftsf=C3=BChrer: Paul Manicle, Liana Sebastian Registergericht und -nummer: Hamburg, HRB 86891 Sitz der Gesellschaft: Hamburg