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 9CAC4C7EE22 for ; Sun, 14 May 2023 21:13:33 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A5669900003; Sun, 14 May 2023 17:13:32 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id A05C9900002; Sun, 14 May 2023 17:13:32 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8A729900003; Sun, 14 May 2023 17:13:32 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 77617900002 for ; Sun, 14 May 2023 17:13:32 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 26EAD1A1236 for ; Sun, 14 May 2023 21:13:32 +0000 (UTC) X-FDA: 80790111864.03.04588C8 Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by imf10.hostedemail.com (Postfix) with ESMTP id F369DC0010 for ; Sun, 14 May 2023 21:13:29 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=shutemov.name header.s=fm2 header.b=tRwc6niu; dkim=pass header.d=messagingengine.com header.s=fm1 header.b=qAOct1LD; spf=pass (imf10.hostedemail.com: domain of kirill@shutemov.name designates 66.111.4.28 as permitted sender) smtp.mailfrom=kirill@shutemov.name; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1684098810; a=rsa-sha256; cv=none; b=h0xzOijUc2QiprSGc3fcLNoRK4oImWx33mG6pFBlry3994n5xosbbb8iiBK2HmASdTvkZn ZaSYgMxsNaOo13hKb3d1kfRgl6/be/xgNXE3H+3ywKEl9/vctwbQ+J9viizh4IVp77GSOj G6IPRPlf126q3nTxwC8zMYn2mOAJatE= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=shutemov.name header.s=fm2 header.b=tRwc6niu; dkim=pass header.d=messagingengine.com header.s=fm1 header.b=qAOct1LD; spf=pass (imf10.hostedemail.com: domain of kirill@shutemov.name designates 66.111.4.28 as permitted sender) smtp.mailfrom=kirill@shutemov.name; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1684098810; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=IuSPhPzoKt6SzlFItZmSGd7IFEm9JtR4K2XlTqqjDSg=; b=7p0HQeznhs9TWMs5sYx6W59fQD8A6ALd5/eD8fT2sdXuhA2nPQv/DMPYwXpUCeyzVPmDw6 pj0vCjmJ/NtIS09kQVRyT04ZI/3aQfhN8NTn4+kZ9ul0S1H+3y4ZpFWaV4xtS9wZc8Rfa5 cNnnQQR1OPig494Wb0GXgM0RSUYDUe8= Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailout.nyi.internal (Postfix) with ESMTP id 1D14F5C00C2; Sun, 14 May 2023 17:13:29 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute2.internal (MEProxy); Sun, 14 May 2023 17:13:29 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=shutemov.name; h=cc:cc:content-transfer-encoding:content-type:content-type :date:date:from:from:in-reply-to:in-reply-to:message-id :mime-version:references:reply-to:sender:subject:subject:to:to; s=fm2; t=1684098809; x=1684185209; bh=IuSPhPzoKt6SzlFItZmSGd7IF Em9JtR4K2XlTqqjDSg=; b=tRwc6niuBNOVuTKwEyqx9a6VsQIiR8Moy/8NsjRBc MFNzOOBwCeyBwuKH7hfQf2mu11BcHRvW1/sTy4ioyfDuFCfb831tniIUXGJWZLoQ +olt7twOWA1isCCaTiLKvMAj/ObtUl1WhE8iidAq9qKKDFSNBBs2icMa1urfhSyq jzlTGwaNZLVGaG3PN9OieoaRG0lwYWf3/jRkOXymTJ1/5i+FgiZiry1ORlENAWvP dVt+22VdL8RZQszaF5cZNpd0J0NBOlTGSBHTTJf0Ei2WBX/bB/H93NDVbMcFYE6r 4kNmCJWwvOPkvJQ5AFuUF/dT08mYqhEeUO5moMzZWR7zQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t= 1684098809; x=1684185209; bh=IuSPhPzoKt6SzlFItZmSGd7IFEm9JtR4K2X lTqqjDSg=; b=qAOct1LDQY6g96IN0g+vR8v7cPKjM76ZHfoMUWVWkTj38CppXKb n2qLMtnZjESXKqj5IoGvh+Y2tH2QsKrUUZbixtRlm8ZpZx31hjD/VYngQ5yhM8X0 tgSZWUPOBTxLaZ/jfTPnY/TDMO0jDiP5PLOfKyQHRl8VXxPGFW4I5JNL4vJWNt+0 v/at5pANurF9eFyKG+s+INq228hVcDUSkq8LXMSucg3Ij7lQFX7hyJlXmKXNyT2e qebGr1GFlQ7bogamkkOa7WznBY6VUnfRPEVmO9g1SE1jaE2YulTGy0cyKKsoN/N7 OpmPFn+xFm63xvHzfPl3Xi9SvvJF6PUiDJw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeehhedgudehlecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpeffhffvvefukfhfgggtugfgjgesthektddttddtudenucfhrhhomhepfdfm ihhrihhllhcutedrucfuhhhuthgvmhhovhdfuceokhhirhhilhhlsehshhhuthgvmhhovh drnhgrmhgvqeenucggtffrrghtthgvrhhnpeetveehleetgeegffejffejtdevgeeugeef tefghffhgfeivefghfeuvefgjeekfeenucevlhhushhtvghrufhiiigvpedtnecurfgrrh grmhepmhgrihhlfhhrohhmpehkihhrihhllhesshhhuhhtvghmohhvrdhnrghmvg X-ME-Proxy: Feedback-ID: ie3994620:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun, 14 May 2023 17:13:27 -0400 (EDT) Received: by box.shutemov.name (Postfix, from userid 1000) id 3DBD910C400; Mon, 15 May 2023 00:13:24 +0300 (+03) Date: Mon, 15 May 2023 00:13:24 +0300 From: "Kirill A. Shutemov" To: Mika =?utf-8?B?UGVudHRpbMOk?= , Ard Biesheuvel Cc: "Kirill A. Shutemov" , Borislav Petkov , Andy Lutomirski , Dave Hansen , Sean Christopherson , Andrew Morton , Joerg Roedel , Andi Kleen , Kuppuswamy Sathyanarayanan , David Rientjes , Vlastimil Babka , Tom Lendacky , Thomas Gleixner , Peter Zijlstra , Paolo Bonzini , Ingo Molnar , Dario Faggioli , Mike Rapoport , David Hildenbrand , Mel Gorman , marcelo.cerri@canonical.com, tim.gardner@canonical.com, khalid.elmously@canonical.com, philip.cox@canonical.com, aarcange@redhat.com, peterx@redhat.com, x86@kernel.org, linux-mm@kvack.org, linux-coco@lists.linux.dev, linux-efi@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCHv11 3/9] efi/libstub: Implement support for unaccepted memory Message-ID: <20230514211324.fymzoa263wx2hs2p@box.shutemov.name> References: <20230513220418.19357-1-kirill.shutemov@linux.intel.com> <20230513220418.19357-4-kirill.shutemov@linux.intel.com> <9549d984-e581-048d-95a3-7c54acd70fb8@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <9549d984-e581-048d-95a3-7c54acd70fb8@redhat.com> X-Rspam-User: X-Stat-Signature: fc1t3h4ra65jonsxputj6o3c39tk1cyo X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: F369DC0010 X-HE-Tag: 1684098809-618302 X-HE-Meta: U2FsdGVkX181ottRZL5OeetGUqOs+UNFwIen+fmWj4C27CK0pXe58zSM0d7sNyA5Vd0/puURQSrLPySwc16PS6LRlMGmXqpKjeJ2VkgkiJht55JQmHS3NsSRejai4B44eptsQLXVU+mJj0hbkPJzphQdV5qK8Zzsib6tR3t79xnez0e6grEECuPxkC6j2PXrfX5wlefqe14Sjb8DaviOMUTEF1ryEjsyDhIoftbdIhUEAb0kXKKi1QAjySkjRF8Gb0i7UO+CXM81bcZZ0MT96M1JDzYu1HrjPMIWSVkYkqB0ag9otuf1OA3Xgtq1pLmPYMg21kdWXBrQB7cWYr6oOMi2oPn6/qsgeTr+FyI0PdujSkqg0Lralq9mAdIdmkZxADLUUwoBtqP7Ib++yqQ5l5A8ka3OrmipBqekD0BXsWCLSI8MM+QpLgDjbRPehxrmVohDVndpw6JG8O+3pZcDCQSTzjAso4S8Ra5u5RKGCMhkfnVA5vNlPl2JJlwQeX5U3d99g/+OSz9QNYFi1VLgDEdaeF6CPLIiUdOj6ufQ4kO/lKp5c+BekRGSJHuVGxWJtc3cpAaKLndPCfsVTaqE1m3Cg782HSPnrKL10gIW6BdDEJfhJLcwHk3Iw2GJp++oB/XQJWrvTZQyub0wVPxWPjOiDyW/y8O2KFV0OMZOsJ1+MDY5YyQ7RU6I9AChjavO8uW9EAszraEapNqUpLsU9Eb5830CSVbgaEpiPJcfx+A0AfN0QlJgaize6XpJTNJc5Pv+F0iwwvnBe0oPgHY4Dof+PAL6KFaQ6EqI93OEyUdMz4IB5q55xrjCtto3slv6grOAff1VfI9NerQqUEJo4vBlPBus0KYrje8512Uw+SNYzCw15G4AKZ9uB6TkC4DKuEauqjIanMNpqOIHTZA+7pORterz9f3JUIvkH3AkupA6hJwvR8PeDP60ratf3MWgwMgHC/3ABmqNbuW9VW0 iple8+1d yDOWBKGiR0aBFOidPHzCIa3RGTxt6GGXs30m1bhPj5i93/tGq+fhnfVZBnxFR5mFCSIeVicnPEeot+kFayk3RpKRd+7u8ACt2kx2jVjqd4/SChTjufPFEZfMKWT5kshhJg2bfFWqOIjeKcYDsWoRqlcEGcSO96i64yns49t4hRvTCAqVIceldplS6/SyAB6/nruIJUFdZPPuUil76I84qdTLU+VaRg4IGp0QOc7WVuoyuhxzX25XedxBckl3l7J1RZ/EsKS/pS+mzYQHcojHrVen+dzqZuffRU3bCw862b/0qd+A= 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: On Sun, May 14, 2023 at 08:08:07AM +0300, Mika Penttilä wrote: > > + status = efi_bs_call(allocate_pool, EFI_LOADER_DATA, > > + sizeof(*unaccepted_table) + bitmap_size, > > + (void **)&unaccepted_table); > > > Wonder if EFI_LOADER_DATA guarantees bitmap not to be freed, or should some > more persistent type be used. If EFI_LOADER_DATA is enough, maybe a comment > why it is safe could be added. Ughh.. I've lost the hunk that reserves the memory explicitly while folding in the patch we discussed with Ard. See below. But the question is solid. Ard, do we want to allocate the memory as EFI_RUNTIME_SERVICES_DATA (or something else?) that got reserved automatically without additional steps? diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c index e15a2005ed93..d817e7afd266 100644 --- a/drivers/firmware/efi/efi.c +++ b/drivers/firmware/efi/efi.c @@ -765,6 +765,25 @@ int __init efi_config_parse_tables(const efi_config_table_t *config_tables, } } + if (IS_ENABLED(CONFIG_UNACCEPTED_MEMORY) && + efi.unaccepted != EFI_INVALID_TABLE_ADDR) { + struct efi_unaccepted_memory *unaccepted; + + unaccepted = early_memremap(efi.unaccepted, sizeof(*unaccepted)); + if (unaccepted) { + unsigned long size; + + if (unaccepted->version == 1) { + size = sizeof(*unaccepted) + unaccepted->size; + memblock_reserve(efi.unaccepted, size); + } else { + efi.unaccepted = EFI_INVALID_TABLE_ADDR; + } + + early_memunmap(unaccepted, sizeof(*unaccepted)); + } + } + return 0; } -- Kiryl Shutsemau / Kirill A. Shutemov