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 6F493C2BD09 for ; Mon, 1 Jul 2024 08:46:52 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 01BE36B009D; Mon, 1 Jul 2024 04:46:52 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id F0E2D6B009E; Mon, 1 Jul 2024 04:46:51 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id DAE376B009F; Mon, 1 Jul 2024 04:46:51 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id BD7A66B009D for ; Mon, 1 Jul 2024 04:46:51 -0400 (EDT) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 3AFE4C0B5A for ; Mon, 1 Jul 2024 08:46:51 +0000 (UTC) X-FDA: 82290553422.01.E178C46 Received: from mail-lf1-f49.google.com (mail-lf1-f49.google.com [209.85.167.49]) by imf24.hostedemail.com (Postfix) with ESMTP id 5C2AA180018 for ; Mon, 1 Jul 2024 08:46:49 +0000 (UTC) Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=I9aQD61x; spf=pass (imf24.hostedemail.com: domain of lgs156412@gmail.com designates 209.85.167.49 as permitted sender) smtp.mailfrom=lgs156412@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1719823587; 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=a+1tnkhEuXtfOoARakIg8mbFt2StTuYRqdlzd6B2WMY=; b=LXBkYcHjkyDOyoawrpoCFvhEHuYO+G9Y0ToN6VXTCpQyDmUOgNvzWcBz7MitI1HRHc8ari Y0Yt79wlYlJgX6TJ8eBbk21wDRvAGRe+a8SkG51ixIgh/afaQPvKgVrz8dlvE+3azAm4yr vfaoD5kPfL/cVInPQClRL9pnPgUydeg= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1719823587; a=rsa-sha256; cv=none; b=pkbKrxnyxQd1+dXp6cHzSnKzVMLFv0MiS6LW2bU4EI5e6juwIY070SSK83FkI1Wqma/1wi YpxN8kaG7kQZrJxJQoSK6OLJ3vGaarjGSMZNByIdnMJ12CkeP77oDKJ9mZxYNNXmUFekck 3Pn1Vy20BQ98W7WgfFzGd7JPUvczJ88= ARC-Authentication-Results: i=1; imf24.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=I9aQD61x; spf=pass (imf24.hostedemail.com: domain of lgs156412@gmail.com designates 209.85.167.49 as permitted sender) smtp.mailfrom=lgs156412@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-lf1-f49.google.com with SMTP id 2adb3069b0e04-52cdebf9f53so2727430e87.2 for ; Mon, 01 Jul 2024 01:46:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1719823608; x=1720428408; darn=kvack.org; 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=a+1tnkhEuXtfOoARakIg8mbFt2StTuYRqdlzd6B2WMY=; b=I9aQD61xugzQCgHiWXBM7TK4KdbPiVoTW6cV2DaAU+fg3CV6sLv4CSz57Cx4JJtzr0 DU0UbczoeSLDLO0FNV66Mi9bX+BP/jKRJv0yYMnqWeVm8TNBtlbEOPk9zxak5OrffCV/ BpDtxo87EMr1VCo0inoaompgvXJRLDCUlJ5eg04R64enWDFoK3h5mSb8q26rZcTz3DDb z0fvt9DOTY4f4GRFiIQ9Te+PxmYACS6+8tt9/cLTI/bWxfPx/CBdVBaTY64gQKSuiw7+ o/uSIMPUeWoHCtbrG87FSM1d2n+2q1m01uqApPfjg+e8vsX7UhVAJaii60LMizo4q9Fd qHTQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1719823608; x=1720428408; 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=a+1tnkhEuXtfOoARakIg8mbFt2StTuYRqdlzd6B2WMY=; b=MMrhwMUv66Zv5al6S37W+3HshzyqjCqDK70lXGJXNtSAaIeZ0IF7hhfrEhyNfYGpQL NQHWowfUm+ak9ASfWW2Ov9QNYjb7JKcuptZ06mVXZWAwWqEajK3gE8AE/X98uubH2UlN I2ak1aKlPP9tJYhP2yI7riMNQHft6T4jMIRukdoUbY7/jthunZFfxA5R84OrNXOvLwj/ KNvIGqf8eoR+6bIiLZ6eOBYHQ/Agsw4SsuLVnes8qVnyt02wYgnaWJf9TMBcW9fpaYAG zOYa/Bi6emLD1BcGvY465pTAPA/2hGZD2+IrauEY9mfZwI6Hte6A0JtH1pMbDE8/To/Z PAXg== X-Forwarded-Encrypted: i=1; AJvYcCXIuQmOOfmlwrjLdjehrWDxsh0w3dLHDpC3VJJsd3C1EbDQtAmdm1qbzZnuPZwMe19mo6PXYHdXPvVb+2BqNKRRVAw= X-Gm-Message-State: AOJu0Yy1FcgxoUc471JWXGczLMWIemdkqX6iIJoiWSIghT+EhUuVSMsN dnZjP2NwWEVRZTI8gOlVXg7d3bngI6hbHtDCmuszg7x/e/o3LBNe9/3rPeC0FsIQtvJeoo3hDHr pa8vqC2v39l3LlUvpkArcTXFYqVY= X-Google-Smtp-Source: AGHT+IHAoJW3lqKQlJq95t+IoDaN1o8zvLJKzRTavFHFh6Y5ZDBi3s3lgQXQjeCldl9vN/YuJW8/OgZC2Oes99WqFjc= X-Received: by 2002:a05:6512:3da3:b0:52c:c89d:ddfa with SMTP id 2adb3069b0e04-52e82744d30mr3919617e87.64.1719823607504; Mon, 01 Jul 2024 01:46:47 -0700 (PDT) MIME-Version: 1.0 References: <20240625121652.1189095-1-lgs156412@gmail.com> In-Reply-To: From: liangxi Liu Date: Mon, 1 Jul 2024 16:46:10 +0800 Message-ID: Subject: Re: [PATCH v2] memblock: export memblock_free() to free reserved memory. To: Mike Rapoport Cc: akpm@linux-foundation.org, liangxi Liu , linux-kernel@vger.kernel.org, linux-mm@kvack.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Stat-Signature: pbmqsmh8qgm1ia4eqm89nrokz67gfw46 X-Rspamd-Queue-Id: 5C2AA180018 X-Rspam-User: X-Rspamd-Server: rspam08 X-HE-Tag: 1719823609-201306 X-HE-Meta: U2FsdGVkX18TijuWe8hp2uJoZFyw0yjLuK86yp/Q0E1GqzDqXBzZWbjeGQX/MZgLDCRgi7YpXr3tCV1ZJdaY6qHjAFpiy1Md7SSMWP1At52UJLOFLYUFhzX8EYi5PTet6BFgJWPLZLAgHrRKTdPoIg2Kk/ujg03JKOo1YhV7TJ6pbPDBQLecjkUd1HjCtTiUDI2DhBkytv9qntGceY9s73svvyHwUwQKnu/RhOSoLaf28NzWT1WrQaiyNdK+j8NsPR4790c03nBhk7EUYF4rYNLwdiTaCS/lLVYLMRtVqckQzWoh/ZmTmnyb7fYsIEcrJ6d0aJSIXONAPn9/WHVCNM52BxQjOh0L6Sn1e6vy5YvBLAvaVBtrZJGOlBpqckw4c2P6f0h2vissr1CLCMGxcUG4qysOTNvs/SzOaxbJ8vvXHLRIQE2Qr5P9hnJ74xlMyXzhAiujnA6bFUCpt0wTqN1pPWQYbVgYpwhCAJvzam8oRx3/0Ns2A9FHGkexUYRpisCdQY54hGs2NQRw8nM40q6buPjZUnYwjKatrhg4y2cVGP2Vnx+PkURFo93iVSan9g0TVxWVg2l5+g3oWgiOlnQW6as2P52yqFfyxDZOoPYAQHRH20mUXXuMhXOXM/yMGeNaSPgFfySRmx0ESSdm4eTriQhzahji+NDmjkxjpDG7i9oFFhXpamMH7GGKHNOgFWnyKF4O/jdQ56qRAQ9QsDesfJlQ9FLE22Xr0G9HWi3urxI29sThWKvhYQPFoxcTCqYDjErbhBF6DLNYuKBX/8mY1DqE45YyVvdNrqCH+TBIkfk8sP2NmS+a9GkbD8FcdqsU5fGqkT06pRZlLUYtQEECulam9ivaCdKKrpcTeKRDNSktF7dO8mIhuxUNGEDr1G8s0ZkaJXzkB42asfJI4DFgZxNB4E9bLJvsmydBiX+MkvCBpb5kEDfppfpl+TMJpgLiAAjaUxmVxNqXEJT f0M4AbzF SZnYM8wSiKeEMO7HY0I7/8xYvlgMTaoub0jerq7R5Pb57iid/cll87opMUwSNZMRstjQwnc+ZuMql5asIxLU0gF3WrWqHdmNULF2/VuQ/Aakw4aYbryEGE4mdrYzb4NIlJkFkjn54xT2d4o+UgivR6E5c7VJnmdgfqW7pFS+z9//yrGh82JC9HpW9SOVnJqFyMP8jEt/v8MVSvPMCZzCfHaCcSItgxei0b99WnGwU7R/PwwSqGdbvj2lj3HKwBiwH7fCyTABSlAZzT4AdOIUweY3lpvJ5Unldpde3bKqJpZHBM2aOaElj3uWHizuGX7fzo0URIj3hrOCQby7ZNd1KtoXLE3MxtFDCFeC+3tzrcqO3msaH7SbV5T1Or5nptZvuo6MlRf3ondNqgUdbKw/j652YGZ+vMCQFkuNb9LDikfObMXg= 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: Yes. we have a reserved memory used for display the image, which needs to be deleted from memblock.reserved list(memblock_free ()) after display and then released into the buddy system(free_reserved_pag= e ()). Should I use memblock_free() or another API? Mike Rapoport =E4=BA=8E2024=E5=B9=B46=E6=9C=8826=E6=97=A5= =E5=91=A8=E4=B8=89 13:05=E5=86=99=E9=81=93=EF=BC=9A > > On Tue, Jun 25, 2024 at 08:16:52PM +0800, Guanshun Liu wrote: > > On architectures that support the preservation of memblock metadata > > after __init, allow drivers to call memblock_free() to free a > > reservation configured in dts. This is a hack to support the > > "This is a hack" implies that it's not a proper solution, right? > > And anyway, memblock_free() will not actually free the memory after __ini= t. > > > freeing of bootsplash reservations passed to Linux by the bootloader. > > > > Signed-off-by: Guanshun Liu > > --- > > mm/memblock.c | 3 +++ > > 1 file changed, 3 insertions(+) > > > > diff --git a/mm/memblock.c b/mm/memblock.c > > index 6d18485571b4..20e7f81fc076 100644 > > --- a/mm/memblock.c > > +++ b/mm/memblock.c > > @@ -848,6 +848,9 @@ void __init_memblock memblock_free(void *ptr, size_= t size) > > if (ptr) > > memblock_phys_free(__pa(ptr), size); > > } > > +#ifdef CONFIG_ARCH_KEEP_MEMBLOCK > > +EXPORT_SYMBOL_GPL(memblock_free); > > +#endif > > > > /** > > * memblock_phys_free - free boot memory block > > -- > > 2.25.1 > > > > -- > Sincerely yours, > Mike.