From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 9AF3CC54E5D for ; Tue, 12 Mar 2024 21:58:06 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1322B8E001D; Tue, 12 Mar 2024 17:58:06 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 0BB868E0011; Tue, 12 Mar 2024 17:58:06 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E9E238E001D; Tue, 12 Mar 2024 17:58:05 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id D1C9D8E0011 for ; Tue, 12 Mar 2024 17:58:05 -0400 (EDT) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 7782E8073E for ; Tue, 12 Mar 2024 21:58:05 +0000 (UTC) X-FDA: 81889750530.29.2AB6E75 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.15]) by imf06.hostedemail.com (Postfix) with ESMTP id 07463180007 for ; Tue, 12 Mar 2024 21:58:02 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=OYCgZ6zl; spf=none (imf06.hostedemail.com: domain of ak@linux.intel.com has no SPF policy when checking 198.175.65.15) smtp.mailfrom=ak@linux.intel.com; dmarc=pass (policy=none) header.from=intel.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1710280683; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=oc2Yn8whAsd04IHcWCcLLXUEdk4x0dxa+GGhb7/7VF4=; b=2WW8Le2+UulgxJiE+/QBJkLPa4N5vVzT9kpez3wE+rCNTGnpAHVG5iFh05BrC+4CP6ht/U +HcxpGF3n8NLR3h7gYU/98H0edomy6j3YqeJIbAW/RKRGftfU1O08VhfwABWJh6/xl5Jr0 Nx6RwesIwk9MFBsq7PrOxt3+xVJDeI0= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1710280683; a=rsa-sha256; cv=none; b=JCbNdYYgnoRKILwlp0xg7on+YZU/BHnl4aI24dcJpXLyjyuDKtzr7SYDL+6EGXu4uTQUH6 fwFLHUmKtqf7JJNoViGJqE698INpEBWTZ0Hhdmz/P47TXwjKrqwMy1L9Fgc0cdHf6pzClT GwmWgH8rCBvMlVwH2s6cF3r+eArlZFU= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=OYCgZ6zl; spf=none (imf06.hostedemail.com: domain of ak@linux.intel.com has no SPF policy when checking 198.175.65.15) smtp.mailfrom=ak@linux.intel.com; dmarc=pass (policy=none) header.from=intel.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1710280683; x=1741816683; h=from:to:cc:subject:in-reply-to:references:date: message-id:mime-version; bh=PdlJgX8tKEbtAKrGAhg/LgPRC/1pQYEMsdNhtUbvpF8=; b=OYCgZ6zlDGLPS73qmAID/EVouQQ7lScT2zCfXyM2rKncVLmwXUnKtSmi RDMEbGenCeSZFe+Mzpw1GutjoDqn2xMypg1QJjESEoCsObC03XO0kJ86O fJQTln5yUO5uSiiNBMk+EZVzqFDtpIaun86rKsD5KnnAvgLVAzG3ULx9z qhW+F1afBS+V1k8jUlMC0+6LUgfVW+wjZ9MNqz3RcDWtPWO1acl3VvRbq xfxySZFU8EY8ZTXglGOGrbUaY2kDFuaPfsZiY2+bBQ9HMOfThtcfb3gBj 4MyS+rYTq9YPNIVrj/2XMfGngLo3Fn6nw0GC6duozfp1d9X07xlfMfF7Q A==; X-IronPort-AV: E=McAfee;i="6600,9927,11011"; a="8832300" X-IronPort-AV: E=Sophos;i="6.07,119,1708416000"; d="scan'208";a="8832300" Received: from orviesa003.jf.intel.com ([10.64.159.143]) by orvoesa107.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Mar 2024 14:58:01 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,119,1708416000"; d="scan'208";a="16331982" Received: from tassilo.jf.intel.com (HELO tassilo.localdomain) ([10.54.38.190]) by orviesa003.jf.intel.com with ESMTP; 12 Mar 2024 14:58:01 -0700 Received: by tassilo.localdomain (Postfix, from userid 1000) id C2461301066; Tue, 12 Mar 2024 14:58:00 -0700 (PDT) From: Andi Kleen To: Pasha Tatashin Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, akpm@linux-foundation.org, x86@kernel.org, bp@alien8.de, brauner@kernel.org, bristot@redhat.com, bsegall@google.com, dave.hansen@linux.intel.com, dianders@chromium.org, dietmar.eggemann@arm.com, eric.devolder@oracle.com, hca@linux.ibm.com, hch@infradead.org, hpa@zytor.com, jacob.jun.pan@linux.intel.com, jgg@ziepe.ca, jpoimboe@kernel.org, jroedel@suse.de, juri.lelli@redhat.com, kent.overstreet@linux.dev, kinseyho@google.com, kirill.shutemov@linux.intel.com, lstoakes@gmail.com, luto@kernel.org, mgorman@suse.de, mic@digikod.net, michael.christie@oracle.com, mingo@redhat.com, mjguzik@gmail.com, mst@redhat.com, npiggin@gmail.com, peterz@infradead.org, pmladek@suse.com, rick.p.edgecombe@intel.com, rostedt@goodmis.org, surenb@google.com, tglx@linutronix.de, urezki@gmail.com, vincent.guittot@linaro.org Subject: Re: [RFC 11/14] x86: add support for Dynamic Kernel Stacks In-Reply-To: <20240311164638.2015063-12-pasha.tatashin@soleen.com> (Pasha Tatashin's message of "Mon, 11 Mar 2024 16:46:35 +0000") References: <20240311164638.2015063-1-pasha.tatashin@soleen.com> <20240311164638.2015063-12-pasha.tatashin@soleen.com> Date: Tue, 12 Mar 2024 14:58:00 -0700 Message-ID: <87ttlbm7tj.fsf@linux.intel.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Rspamd-Queue-Id: 07463180007 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: czmefys7pz4gk46q1juj66c44crgwkhm X-HE-Tag: 1710280682-313743 X-HE-Meta: U2FsdGVkX1/B+1cVPy7PLgnQilC9H8u9fI8ugboJzsOOCQYVJ7ZCJFdBzeMRuWTt/Bs+R22xxYqbjLUCzEyzrjXRRpdWC/NNm4UUBB+U+UL/p2Oyp8up2Kwid96t9Lk5U65cvfiWqdw/8aKoWbpMwe2d9eSrGFOhTe4ybyagcxb14x7kSVJE2WdxgbDPKpaXWa8l3K8JZQHUUltyWsYrm3OUb1+Hcx69sxMQrWEMPkGjuJEnfSWLm8sbdldcpEUGHi+rcwFMTbK+dlu7eFcRSiWn9G0On0ZvdksLCoepmW5J3cmQxKc5zjyJSqLAdKLatZunkKXienaqOEW/jAEGi4o4h7OgXpMjvHrxxlVFlLIi/xverNPmeaAeKRyr21uAiSOEhQ1VmW1QYXTHdWnl0ZzMox+9s4kbCPnyHqr+2RHC8lD+gQSZIQ7FoIeQKZo5ehPNMaKlZU+iPHS352JTfLy4HiPIOT6VLPA1b3/oV21DOMAiKSPdS0rfG6xYLXV+Pmw2xQXj5zTC+H0mylysK7O+RB6651bnkWXqBU6Rr9TdhXHN+M3j0kQwSGotRhczl+gbzoPh3DFfwwVypoP5bznc7BFAa2wrkaock5EIQZIDvaN131CUEydmpBQFuFgJSr++jxk8bx6MlDN+vRBktupEqFum3Kz9jp8izCq54+7S6eOx93I067+jZr5mfcAVvyaFetnw6MpazRe+t+pXYn4aXel8MI36qUGPHhe4UY3+petrsittkxf7meCxDvaSbgEzQAdb2KmlnKaM07Bur3zoC0uAAlXLm9zbvKKdEauGmWiOo2vOsbX5hBOQ2uuw9YMtRFxQFLY= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Pasha Tatashin writes: > diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c > index d6375b3c633b..651c558b10eb 100644 > --- a/arch/x86/mm/fault.c > +++ b/arch/x86/mm/fault.c > @@ -1198,6 +1198,9 @@ do_kern_addr_fault(struct pt_regs *regs, unsigned long hw_error_code, > if (is_f00f_bug(regs, hw_error_code, address)) > return; > > + if (dynamic_stack_fault(current, address)) > + return; Probably I'm missing something here, but since you are on the same stack as you are trying to fix up, how can this possibly work? Fault on missing stack #PF You would need a separate stack just to handle this. But the normal page fault handler couldn't use it because it needs to be able to block. Ah I get it -- you handle it in the double fault handler? So every stack grow will be a #DF too? That's scary. -Andi