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 12306C3DA60 for ; Thu, 18 Jul 2024 03:16:40 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7ADA76B0083; Wed, 17 Jul 2024 23:16:39 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 75DBE6B0088; Wed, 17 Jul 2024 23:16:39 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 625856B0089; Wed, 17 Jul 2024 23:16:39 -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 4390E6B0083 for ; Wed, 17 Jul 2024 23:16:39 -0400 (EDT) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id BA16E4020E for ; Thu, 18 Jul 2024 03:16:38 +0000 (UTC) X-FDA: 82351410876.10.315B3E2 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) by imf03.hostedemail.com (Postfix) with ESMTP id 2BF8020007 for ; Thu, 18 Jul 2024 03:16:36 +0000 (UTC) Authentication-Results: imf03.hostedemail.com; dkim=pass header.d=infradead.org header.s=bombadil.20210309 header.b=KimVJgmL; spf=none (imf03.hostedemail.com: domain of BATV+8a855cc45d05e91dc6c7+7634+infradead.org+hch@bombadil.srs.infradead.org has no SPF policy when checking 198.137.202.133) smtp.mailfrom=BATV+8a855cc45d05e91dc6c7+7634+infradead.org+hch@bombadil.srs.infradead.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1721272557; 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=tXPglZwwvBJWWrCMOmH6w12w2LIkiUUmn9tD9p3ZAhY=; b=f+jXHuj6BugOX8oZst3b4b5k2vQuJYS9YN3A8Lh+hQNNOtuEjiK6GqWzDlrxi4sVz7WyA/ cn2xjv3BhAU0c+4rIrvanjfM1a6BvKs8x2SFX59FKf2HQUrsx7ImVOoWvQnE6ZcKVrgi6I pp74YRGyJMpDZsN8FOSF/ArgHOJzaDI= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1721272557; a=rsa-sha256; cv=none; b=McbiXRdKnZ2fhSC0f0jMtYKagHHVXysmkrS3GaYX+yKdQJyv0WdXc+3cMcgna8JSALT+oa AcTY2HQVrITJs/LrALsUfkl2aFidINW10/WVNCTmI5WhNl0boJlnHnygFZB/+rM1DncKdj XuFJX+rf0WRAiQ+SA0Mh+AWmar12jSQ= ARC-Authentication-Results: i=1; imf03.hostedemail.com; dkim=pass header.d=infradead.org header.s=bombadil.20210309 header.b=KimVJgmL; spf=none (imf03.hostedemail.com: domain of BATV+8a855cc45d05e91dc6c7+7634+infradead.org+hch@bombadil.srs.infradead.org has no SPF policy when checking 198.137.202.133) smtp.mailfrom=BATV+8a855cc45d05e91dc6c7+7634+infradead.org+hch@bombadil.srs.infradead.org; dmarc=none DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=In-Reply-To:Content-Type:MIME-Version :References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=tXPglZwwvBJWWrCMOmH6w12w2LIkiUUmn9tD9p3ZAhY=; b=KimVJgmLlOshGb9X3rxu4gmg76 m37PrvVBXwdBRpCT8SAfP6JygLD3m+ReiB2Dk7k7UNYVOQzVKbtuuAYbqQNwA9eMOxEKeQaNbq/WF vtYPP8D3+q1M84I1xhbR4MAQUD1swhgINhao2tVXPz9qeeZ2n7rTqu6n+fL3uFv+4+LJbtAviJFpx lGs5nMReJqU2KPFIDzvqxvpdmORzPBMNt2eiU/bbuIr1C9CLnwUmLbqqHN4fASmgS36mg1VaSQWTZ xZftpjrxyrGfyNrmXBfoJG41M+IoPxHlHDiMf00DYtqrk/vSCoj5mskU6kwtkamB97nh7uIq97EQO 4Y+KXozA==; Received: from hch by bombadil.infradead.org with local (Exim 4.97.1 #2 (Red Hat Linux)) id 1sUHd7-0000000Fbbn-16rf; Thu, 18 Jul 2024 03:16:29 +0000 Date: Wed, 17 Jul 2024 20:16:29 -0700 From: Christoph Hellwig To: Danilo Krummrich Cc: cl@linux.com, penberg@kernel.org, rientjes@google.com, iamjoonsoo.kim@lge.com, akpm@linux-foundation.org, vbabka@suse.cz, roman.gushchin@linux.dev, 42.hyeyoo@gmail.com, urezki@gmail.com, hch@infradead.org, kees@kernel.org, ojeda@kernel.org, wedsonaf@gmail.com, mhocko@kernel.org, mpe@ellerman.id.au, chandan.babu@oracle.com, christian.koenig@amd.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, rust-for-linux@vger.kernel.org Subject: Re: [PATCH 1/2] mm: vmalloc: implement vrealloc() Message-ID: References: <20240717222427.2211-1-dakr@kernel.org> <20240717222427.2211-2-dakr@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240717222427.2211-2-dakr@kernel.org> X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html X-Rspamd-Queue-Id: 2BF8020007 X-Stat-Signature: pu1opnnh55hdmj8d7f4dxmdpon3yjrwj X-Rspamd-Server: rspam09 X-Rspam-User: X-HE-Tag: 1721272596-399397 X-HE-Meta: U2FsdGVkX1/TsGLp0s79fq+XODqIaxQGbR1+wbPXo0BAgA3rIyf0AgH+w01Uuv4XEp0lcau0MYp1u4sfiYh8a9VyqsI8XxNJyLN6cXAPbpmeyxe2pbQyPDRBchO1q64GO3UowpOugI3SLbQJyuLi2ppZU8X5HeXZoRTc+qk/bSoYGaU0rtIP+k6h4YW64GkTZ/q+9Vz2ugeZEqWTju8vKWQ75waL8yBC6FChDRhyl7ssuZVwb+KZeirAUiO29xfwKvCKqGFMnV80CZALgnIAJnAKnC3AtHFTtYhPP0BQeT5gTb04yWEnY03+rErYiXX9CKhr6CnuUnXDYqp+3hCn3K2xnsjH1HV6SUzQ9ZMd6DfD6lW0XHhF1fakwF38lrxTCL6vAiHnm0qXVVCgjK6IvXksh6SxGJypVh0bXjFvwka+VsysfKZ7cmCNXPCfvYC0Y1Jmz75a4/MyeBbJZDP+6+yiMlYW9cGIscFxXTFVKeDtz4i2nKXmyM/cTryokMwLt1auodpIDUDrBoYPZja4bcJZ8LBHkv4pqgXvFr2NJAj95nyF/cTkNjDMjw+XEL2sJ1tZzsXrNLx02wc9cebC8tys6ZOtBgCMD3Iic/0k7BzJ5vZX7XqLEqSN/uVEyEV99pZLJuC7am0hNxu5zbGJC1OdULobE0Wt0562DuR01dnYMBHL7e/2jNjHSzSz5LjIP9Y7/W5m7bQxTdYa61e2F8eIXqS5u+kvII1X2FI4noa7sHWGFW54O4BtwiLe7LhTotZ7WqDOQGiYtHTCkbh4c2MQcmRD+tMzm4mAS/O0pp2znHitYZrMiV3vhZjeHU/EDzjGo7Nz0Uove65/tDV34eDJXBlmw86x7hf1Brdh/P98+7GvIeq0VlcSpiOzSAeK2B/CvGAFg1QRdDPy0w86yduMNxa5h1L3fWIa5uq9bnx9hrWaDt38nGfVXDB+DPq6STspI8NgmUy4Ry46OZP /PGp0CD8 eVh0UDZO1cdfGBzTLA7qOUF09SMVAMwpYFYJ5qfmN45WFd43Rwki7TTtLrvCNvRjU/uImWeLuch8EaKZs20Kl3dEjPGuQXAM6xD+fRaqRiX9ZxkMZh5NrtjTjakkCEB1r1nQDnKG8qRh6pCqO/n1DMoh3VgAIhoajLnzqEo8xc+LAryAynykuc4cxYj8Y6Vs3IXsbQpuHmSj34TAfplNmR4oAWTlowpoizW4B5CahjscxScuffkacI3K29A9T14OJ/EdkgdTxMRcSh+wcRrLrDlLDGn0M0P5anAMcTCMHWaJU2ZsULYwvVJxc/0N3RkBJM2eHeZt6kTcZ9Xe28XkCbOoFNFizr0GkE7w12EhLDYGI207k3B+yNUOOLLB/mgIfV4CqufC+52p3sRjIxkjamDzHNBiJ/XT8KuvWiDJCNbQpos+BPnqWfdtVzrCLDS0fpP+L0vkJWDjqzj2HcKfH6KlzOhRNrOyOUG81+rHQQDKJKCULWG6iHUqo1zRFD/Ti4s2uV/xr2qoYFt+8zmriI/ZSDA== 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 Thu, Jul 18, 2024 at 12:24:01AM +0200, Danilo Krummrich wrote: > +extern void * __must_check vrealloc_noprof(const void *p, size_t size, > + gfp_t flags) __realloc_size(2); No need for the extern here. It would also help readability a bit to keep the __realloc_size on a separate like, aka: void *__must_check vrealloc_noprof(const void *p, size_t size, gfp_t flags) __realloc_size(2); > + if (size <= old_size) { > + /* TODO: Can we optimize and shrink the allocation? What would > + * be a good metric for when to shrink the vm_area? > + */ Kernel comment style is to keep the /* on a line of it's own. A realloc that doesn't shrink is a bit pointless. The same heuristics as for krealloc should probably apply here, adjust to the fact that we always deal with whole pages. > + /* TODO: Can we optimize and extend the existing allocation if we have > + * enough contiguous space left in the virtual address space? > + */ I don't understand this comment. > +EXPORT_SYMBOL(vrealloc_noprof); New interfaces should be EXPORT_SYMBOL_GPL. That being said for this to be added an exported we'll need an actual user to start with anyway.