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 0FB0EC021A4 for ; Tue, 25 Feb 2025 00:00:54 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7FF07280005; Mon, 24 Feb 2025 19:00:54 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 7D52A280002; Mon, 24 Feb 2025 19:00:54 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 67565280005; Mon, 24 Feb 2025 19:00:54 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 4907D280002 for ; Mon, 24 Feb 2025 19:00:54 -0500 (EST) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id D16CD120359 for ; Tue, 25 Feb 2025 00:00:53 +0000 (UTC) X-FDA: 83156511186.20.309056B Received: from mail-ej1-f50.google.com (mail-ej1-f50.google.com [209.85.218.50]) by imf02.hostedemail.com (Postfix) with ESMTP id C720A80026 for ; Tue, 25 Feb 2025 00:00:51 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=Y1+oEFjt; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf02.hostedemail.com: domain of richard.weiyang@gmail.com designates 209.85.218.50 as permitted sender) smtp.mailfrom=richard.weiyang@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740441651; a=rsa-sha256; cv=none; b=Vj2fl3D5pYHxAsIUFs1029dLa8LeVO/QRLTtO0S2GUkQXkxfCrgSdPs5ys1CBzzujRUetF TKw900gP5p6OGeJwfT2W+k2r3cIg3otBxIOtML590AGsp9KE5kZ2d3PcaB1EC14Rwymn/u RhSC7zBt5oTHQWK16b224aXZZSyoq04= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=Y1+oEFjt; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf02.hostedemail.com: domain of richard.weiyang@gmail.com designates 209.85.218.50 as permitted sender) smtp.mailfrom=richard.weiyang@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740441651; h=from:from:sender:reply-to: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=Zwmz29OaB4anSC3HDaaMnvvDxasPenPirxVhby3n1zg=; b=URpQrSuX2NGXyvok8qpDiKQ1BqgkMpo1+Ba+0B7nMHxOhHjjpgxsGrirW9xMkRdKSDBpFJ gv/zkhQD8Fepo+V3UMKGqAi9P3agteEvOJZDLXFFLwMPQCoWT3cBkMjSMoLvaECf/eWnWJ 6LWQ67nkJqGXYe/e9Gd1gMgoypBOxXw= Received: by mail-ej1-f50.google.com with SMTP id a640c23a62f3a-abec8c122e4so129552466b.1 for ; Mon, 24 Feb 2025 16:00:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1740441650; x=1741046450; darn=kvack.org; h=user-agent:in-reply-to:content-disposition:mime-version:references :reply-to:message-id:subject:cc:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=Zwmz29OaB4anSC3HDaaMnvvDxasPenPirxVhby3n1zg=; b=Y1+oEFjtQDtAovLKnNXa4/AsYhwUV0w42bMvuMc00IyglrURTFdBqe9nDK0rWeGbqL 77Zf5xqyFHR2O/d5BokOavpJbTsE47lcgGTjoCnK1Y98OTnkKljlr2Oah6H06g9xQ/mb /oPQa154uDDKNXfieC/sCyZr/K+pOSZTBtXYxp5cKIgWZuDrdbPFrWOOzTeAtBBWkDBq G2SRd6fX4nxnwUXG2cwxUrwjDbUX7w3pNe4E1F4pxwyhnGkfr4a+6k2bq9jNTByzxUol QwDYLS4ypivN61AHGvWnMfps1eAyD1qK6MAo53Sg6C7UlrDJenPbWeepdOxa7cnCVqC0 P17Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740441650; x=1741046450; h=user-agent:in-reply-to:content-disposition:mime-version:references :reply-to:message-id:subject:cc:to:from:date:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=Zwmz29OaB4anSC3HDaaMnvvDxasPenPirxVhby3n1zg=; b=iOIsmSAdxLSY0IXQzaOrlRdDWJQKUOpc4md2fLeU9pU4p2PAMCTQTyRGmJhgyuZsnA Ns+0DFAEGQO6na9zkjS4aM/KMhUSqTm4ayRVE3j/M6sJInS0UCjeOyoocuuLDkj+nV2K 8HkyP8bvaIpxcsjE2gk6df7Gv/LY+tSj9+bSoy9paaD38K5ydCHRO+9OV3iPDiF2uL5i I/KsywwP1FixsKRPXvg187bKPgQrwCH298Ib4PDc7XF2580eHRFmIUFSizjrLiYTqRb0 iLRnhYtU/mkNr5DgvScRm5jUy73PE1cz3dTsVBcmdkkrEA8rADiZQKzOX44Ul0Cf2EEh 8dQA== X-Forwarded-Encrypted: i=1; AJvYcCXgQPf5iypDTQEqXfFOAIiE06hmaMwJ2AocPPuHNMVO2lOJTK/QMzydFQDgnNNAf7RjbkZVfLNQAw==@kvack.org X-Gm-Message-State: AOJu0YzgWmpRu+/VfNNsd8fAClIefkXUaTmCidEkEVk3y+ou3BYR0VEe FVbOW/I9VEe3uWCpRgEGIQS/umDNeys/x8QEvZUcMkwhO9UmZCLS X-Gm-Gg: ASbGncu9ndwX9yyNLbvGnY1SiqTvy6gLBpO6MJRK6GWvQ+m5dIHbRZf9YXwQSWr4fNk KKB+Jpbp1znag8JkWMq3HoSrTp8ey1ntKrG54zVv2a1APauOM28cAr6nZ3J9+lUmJSYRyCn/2DX azVux7l685C+xWLX0KWU6iV47ZnAAZqvSSBoQqen8sx7MVQbGaimg8LfGNVh09CSihstf1i5+DX CwdHQ4QMtBwIFuOwAfB1hIPDf2VRF4g8qZSMdPfd9aWfs/BDAzqauyxfPhIl0yp8tApDM2+D4iI krctM9Wg+YlyRtjTPbg3Gwtphg== X-Google-Smtp-Source: AGHT+IHCiDeg8iTtlMHBTT+8rsM3bDbDCpBQksJY/HtiteE5vEuZdMawubgKL7nC7L+KAJkK6uv0bg== X-Received: by 2002:a17:906:2c4b:b0:abe:bfdd:e68c with SMTP id a640c23a62f3a-abebfdde8f5mr390505766b.4.1740441650101; Mon, 24 Feb 2025 16:00:50 -0800 (PST) Received: from localhost ([185.92.221.13]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-abed1da4892sm42880766b.82.2025.02.24.16.00.48 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Mon, 24 Feb 2025 16:00:49 -0800 (PST) Date: Tue, 25 Feb 2025 00:00:48 +0000 From: Wei Yang To: Mike Rapoport Cc: Wei Yang , linux-kernel@vger.kernel.org, Alexander Graf , Andrew Morton , Andy Lutomirski , Anthony Yznaga , Arnd Bergmann , Ashish Kalra , Benjamin Herrenschmidt , Borislav Petkov , Catalin Marinas , Dave Hansen , David Woodhouse , Eric Biederman , Ingo Molnar , James Gowans , Jonathan Corbet , Krzysztof Kozlowski , Mark Rutland , Paolo Bonzini , Pasha Tatashin , "H. Peter Anvin" , Peter Zijlstra , Pratyush Yadav , Rob Herring , Rob Herring , Saravana Kannan , Stanislav Kinsburskii , Steven Rostedt , Thomas Gleixner , Tom Lendacky , Usama Arif , Will Deacon , devicetree@vger.kernel.org, kexec@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-doc@vger.kernel.org, linux-mm@kvack.org, x86@kernel.org Subject: Re: [PATCH v4 12/14] x86: Add KHO support Message-ID: <20250225000048.f2nmfn5isuh3fn6s@master> Reply-To: Wei Yang References: <20250206132754.2596694-1-rppt@kernel.org> <20250206132754.2596694-13-rppt@kernel.org> <20250224071355.xsl2dbupda4dhfzl@master> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: NeoMutt/20170113 (1.7.2) X-Rspam-User: X-Rspamd-Queue-Id: C720A80026 X-Rspamd-Server: rspam12 X-Stat-Signature: mgmyri7wkdff3bmjeazusfbdqjseeppe X-HE-Tag: 1740441651-432106 X-HE-Meta: U2FsdGVkX1/9XQXga5BEIg+qs8UK8gwlbAS4yIwODJ5fZRnswuJS8Fx8pedZaWQ3Yy/E70Mmbok8hkADc3QW4HiPJpG52uNqHcFGkOrx0kg5x4/rN/fqMJmZrJx59cGrMeKpL7pliQ69DpJqfH8TKjfvHtpTOtZJi2S4nAaI1moc5Ri6oHhSVEB0lFTeGSIwDz8bOM1PrFSPMNUoXGxTLpWjUaacPNf8XH8xs9HxpPsgNGQ8KdP0JkG3D8YirTKdc40tLz2iPAKXPEEvp6HufX1EgwVWNrRCC2ALpEBxxejoz8NGLL89Nx2EPnSALA/NP/lyVdsPvHS3T2Dcy8URa5ocxvVJvoP8QxLQZqFiqvbenKiRlMIgw0O2OCdaC4q0QcTs5CSTHw6LHIBdhq9JaWrI52B5HIvisVKYRVvSTkcSWiNrf6igWDM7rx5iB+cMXJWhMtOz2Uk1tF0g2R+CZlfuQ43l4st8HCjyzw/E8ilzTFYcQ3CAXrg/r1OTpdHu9r2vM/fArvZVQcAxBLcSYIqJYt/gJ9u/yHy4fdiieYBqnXGlF1AADsTzG/UuoK2qFOwlazlSSxkzgBCsVID+9/wdE5uRfOpAB/ZtHMGtn1GhdUId8pXsL3737Keju7Qc4wUzm5SKXZHxs6pbg9qwtdZgdP2OZHk2rfCx+Mcxrs9BSNQH1gOYcOxDB+5/7KnH2L6A9or1r6KE0iJ054uXUKGvenswsC1D5BMV0NPQkJeAbfDBPjasw525jgbeaWOVq33xUPxf71GwAfTc5vjvOtb9iSPLg8Zgzt/xSEW+4bf93zflX/q/4dp8oG2D6l63XxXaq2kYpzIF/7J6eMWpXi0VVbronsZmuTdFapcRpkxyLM0WyiZ4IigcpipuGpUoIAfrE7iNv8SYF74LNq3WBSFZ3KCT3+4fwCwM9TUX9k+s7jIzxB79CtZVoQSTNHs5AWgfZZlthdq4q4hZEeu SpPRw+r8 H93n91E+fZCOhY50iJMLRqtJ0e9tZeT322ciLZDCY4Q4ixbu16UMJ3mPOwh0lS7FQXv2g73UMPBGg1RHt+buktFTHh1IGHsaxSQZBqlD7dwOeSapuGUUd6NsgRVBSFY2M2BncogQwbSL7ZHHqmcPxdriAQ9AB1m8sCgq+CjbQ38zP3BvBXMrPYWh3nwU+rqF/oxuaeRCuD+/X+vcngxOmyvLDcL3XFA9OAu0g7CJm9atiuPYcHpR9P2FqOlsy5az5ATL0Wf2+lSJdYtv683PnMDi0VaH1gnLFtmztT60ZkkytPHpVdLbw9667ceTkgPFMjnS1uVEZKVUtWf9H40UsMO3g1s+YmzCwzZ2FknnPSvApCjuZykY/vW30jMWKLUVNQP1jdX4Mhf8v6dUAFSMAwWfVsLFY2n7DcPW6OGK/oVs1r4FQjzzxoMx9tboy6CV25vzlzsPGmMJGGpDcg0jmW4v9wNsdu7rF6xPg6hhD6XbRuufmULRkAl1tbfZmNCFn1GT1d54VCKY8M0hvP/KKUHn97PYNtHneIMraiLd2VdatpbkY78QV8jbly/r91QQQzXtaCA0jifEVAL25JIMY/6vVg9Dhu4E/M8Sh1eZMgrBiK3AO2LIyQ93P/lKiIqtjNDO26XQHauiSQXK7CAsd98ujotAmT8MKS54CykAgEm4X8KqKFowDo4JPk3on5HJHPK49 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: On Mon, Feb 24, 2025 at 04:36:38PM +0200, Mike Rapoport wrote: >On Mon, Feb 24, 2025 at 07:13:55AM +0000, Wei Yang wrote: >> On Thu, Feb 06, 2025 at 03:27:52PM +0200, Mike Rapoport wrote: >> >From: Alexander Graf >> [...] >> >diff --git a/arch/x86/kernel/e820.c b/arch/x86/kernel/e820.c >> >index 82b96ed9890a..0b81cd70b02a 100644 >> >--- a/arch/x86/kernel/e820.c >> >+++ b/arch/x86/kernel/e820.c >> >@@ -1329,6 +1329,24 @@ void __init e820__memblock_setup(void) >> > memblock_add(entry->addr, entry->size); >> > } >> > >> >+ /* >> >+ * At this point with KHO we only allocate from scratch memory. >> >+ * At the same time, we configure memblock to only allow >> >+ * allocations from memory below ISA_END_ADDRESS which is not >> >+ * a natural scratch region, because Linux ignores memory below >> >+ * ISA_END_ADDRESS at runtime. Beside very few (if any) early >> >+ * allocations, we must allocate real-mode trapoline below >> >+ * ISA_END_ADDRESS. >> >+ * >> >+ * To make sure that we can actually perform allocations during >> >+ * this phase, let's mark memory below ISA_END_ADDRESS as scratch >> >+ * so we can allocate from there in a scratch-only world. >> >+ * >> >+ * After real mode trampoline is allocated, we clear scratch >> >+ * marking from the memory below ISA_END_ADDRESS >> >+ */ >> >+ memblock_mark_kho_scratch(0, ISA_END_ADDRESS); >> >+ >> >> At the beginning of e820__memblock_setup() we call memblock_allow_resize(), >> which means during adding memory region it could double the array. And the >> memory used here is from some region just added. > >There are large KHO scratch areas that will be used for most allocations. >Marking the memory below ISA_END_ADDRESS as KHO scratch is required to >satisfy allocations that explicitly limit the allocation to ISA_END_ADDRESS, >e.g the real time trampoline. > Thanks, I see you point. We would add memory region during kho_populate() and mark it scratch. >> But with KHO, I am afraid it would fail? >> >> > /* Throw away partial pages: */ >> > memblock_trim_memory(PAGE_SIZE); >> > >> >> -- >> Wei Yang >> Help you, Help me > >-- >Sincerely yours, >Mike. -- Wei Yang Help you, Help me