Received: by 2002:a05:6358:7058:b0:131:369:b2a3 with SMTP id 24csp8251181rwp; Wed, 19 Jul 2023 07:21:24 -0700 (PDT) X-Google-Smtp-Source: APBJJlGtNVBpHQbPc0BQXJMaoTlD0sqoDtFInVeieMOATo6sUU1cNKjwAzUyKZ7h3G/jkbsyNXfD X-Received: by 2002:a05:6a20:6a22:b0:133:17f1:6436 with SMTP id p34-20020a056a206a2200b0013317f16436mr3083719pzk.19.1689776484349; Wed, 19 Jul 2023 07:21:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689776484; cv=none; d=google.com; s=arc-20160816; b=K4bVP/0z9LSf+lr0ecBkZMO7RzQrQZoAbb7Lc/mbziSXWwL/Ik28DbgPFq/TOaS8hV XlS/r4kw86AGWbUfPfG9QbZ111aIUg9u6e4eP5u6i5kqGFG2PEkShTHlgw0xPUrhoGmg cPpFkxO7pRcCBIbbp1XUrQ0ee98TK26DBB9ZxQNUPuqSZfdNOCzCC8Wq8gOPFY/1tT0W iqmaMCh4oaiISv/Rg7FIhE4jT44nBRWd3xZ40xs2Zataa9nwuYw3zg3w9PD9x5ZZv3Kf f8iZpecTpNqwkRMdIlnw9rRimwgOTOvu7pAgIFLvHiwADnfjF5BVQVSwyQfLgMsvmnMJ HHgg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:message-id:organization :from:content-transfer-encoding:mime-version:date:references:subject :cc:to:dkim-signature; bh=6qQBAQvDRok9BBlaorhelHNMGsVX+S56uXzquq+33Lc=; fh=AjSgFQ1WLkC1i1/5bxoeTEimu78gEFEK6c4iwZnkrfA=; b=GlQgIT7e+mQmo97nWGeL7Y3v5hHt66CJxV+3RPgj5S9yAfwv1PRGmBKXGpHEMWUPUm zBD80sLYYntqaiefjz+ONUwTB+3s+MVX5PzTmvQoqEskUV7VafZP026hyldr8mlMRATw ZoCEfVTYomztt1dVB0IdOSAJOq7M6O/9f9oC+6zLKbk4/9DzfugcMrmVTBUTwxFBSQdh rb9QXuq1V3GhRYv7xRRUcMnmzc7tLsFsMP+068oQnmBPpmJLpAeAKMWaF9GclwriALx0 jtVQSyQCq/lTmJ/g1Y2fgL6j7OkHb+OrA07ZFRk5YWxdeNVLcuxHE9cTkGdqalU8vd+P pkIw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=E+aTPrw4; 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=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id w2-20020a637b02000000b0053eef60f940si3591061pgc.765.2023.07.19.07.21.11; Wed, 19 Jul 2023 07:21:24 -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=@intel.com header.s=Intel header.b=E+aTPrw4; 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=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230317AbjGSNxZ (ORCPT + 99 others); Wed, 19 Jul 2023 09:53:25 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36186 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230164AbjGSNxY (ORCPT ); Wed, 19 Jul 2023 09:53:24 -0400 Received: from mga06.intel.com (mga06b.intel.com [134.134.136.31]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 518AB19A; Wed, 19 Jul 2023 06:53:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1689774803; x=1721310803; h=to:cc:subject:references:date:mime-version: content-transfer-encoding:from:message-id:in-reply-to; bh=eLReTLR7T3Lczh0yY83eGVr+L00pnkRO/M98nIcTRXc=; b=E+aTPrw4iEGQ7xw5TrtWI3Lxk/lAt1Up0qkAhq1RyTjLZBTEKIuVoOZy Huah9C4X5g2BLDjbQLQpqXiCA7462GRL2tL9/dHMV92ojsNW6r7Th2qAQ G3PwyW/RSNvKTqtVcj+w/f8+AP5hwwdk2Pa9kRyqs5EtFgeyTModX2weR 0KLrG3hJAzK6OmYcQbpGa+E2FAE1s1OxyTxcJbzKKLFqznUVf9aihWU75 Kf/2oWk41+8/DrZMZlchQHK7VVtclTLbSr2OSniCF/Y5UjGF+m0NQHfF+ JJVWSN1S2olRI6BvKU4PSINVU8oahRBep+SooYoClL7E6b14wMR8UhLgw A==; X-IronPort-AV: E=McAfee;i="6600,9927,10776"; a="430236114" X-IronPort-AV: E=Sophos;i="6.01,216,1684825200"; d="scan'208";a="430236114" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 19 Jul 2023 06:53:22 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10776"; a="717986450" X-IronPort-AV: E=Sophos;i="6.01,216,1684825200"; d="scan'208";a="717986450" Received: from hhuan26-mobl.amr.corp.intel.com ([10.92.48.113]) by orsmga007-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-SHA; 19 Jul 2023 06:53:21 -0700 Content-Type: text/plain; charset=iso-8859-15; format=flowed; delsp=yes To: "Huang, Kai" , "linux-sgx@vger.kernel.org" , "bp@alien8.de" , "dave.hansen@linux.intel.com" , "jarkko@kernel.org" , "x86@kernel.org" , "mingo@redhat.com" , "tglx@linutronix.de" , "hpa@zytor.com" , "linux-kernel@vger.kernel.org" , "Dave Hansen" Cc: "kristen@linux.intel.com" , "Chatre, Reinette" , "stable@vger.kernel.org" , "Christopherson,, Sean" Subject: Re: [PATCH] x86/sgx: fix a NULL pointer References: <20230717202938.94989-1-haitao.huang@linux.intel.com> <520111c9ccdd7356f9eaf20013e3e3c75b06398e.camel@intel.com> Date: Wed, 19 Jul 2023 08:53:20 -0500 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: "Haitao Huang" Organization: Intel Message-ID: In-Reply-To: User-Agent: Opera Mail/1.0 (Win32) X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED, SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED 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 Hi Dave and Kai On Tue, 18 Jul 2023 19:21:54 -0500, Dave Hansen wrote: > On 7/18/23 17:14, Huang, Kai wrote: >> Also perhaps the patch title is too vague. Adding more information >> doesn't hurt >> I think, e.g., mentioning it is a fix for NULL pointer dereference in >> the EAUG >> flow. > > Yeah, let's say something like: > > x86/sgx: Resolve SECS reclaim vs. page fault race > The patch is not to resolve SECS vs #PF race though the race is a necessary condition to cause the NULL pointer. The same condition does not cause NULL pointer in the ELDU path of #PF, only in EAUG path of #PF. And the issue really is the NULL pointer not checked and fix was to reuse the same code to reload SECS in ELDU code path for EAUG code path How about this: x86/sgx: Reload reclaimed SECS for EAUG on #PF or x86/sgx: Fix a NULL pointer to SECS used for EAUG on #PF BR Haitao