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 B4BB8C7EE23 for ; Thu, 18 May 2023 17:24:03 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2B117900006; Thu, 18 May 2023 13:24:03 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 26104900003; Thu, 18 May 2023 13:24:03 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 102AB900006; Thu, 18 May 2023 13:24:03 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id F29DA900003 for ; Thu, 18 May 2023 13:24:02 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id C93B01608BC for ; Thu, 18 May 2023 17:24:02 +0000 (UTC) X-FDA: 80804048724.20.B1C5B56 Received: from out-54.mta0.migadu.com (out-54.mta0.migadu.com [91.218.175.54]) by imf18.hostedemail.com (Postfix) with ESMTP id CBAD81C0004 for ; Thu, 18 May 2023 17:24:00 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=sNDSyKfF; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf18.hostedemail.com: domain of kent.overstreet@linux.dev designates 91.218.175.54 as permitted sender) smtp.mailfrom=kent.overstreet@linux.dev ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1684430641; 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=eK2qQ4usiSIYSyupOId390QtbQqfKan1m34h+LbEFPM=; b=b34yHdhhtnxnxzDpX++NTdOidT5jZGLGQkqeW4fgxHgWhh9pT3GJeL9wWrC6UuKqIYdxi8 +rj+MXu2ak3z8mIV9jfvgv4dG1eHrgca15ot8gOYOLQ2dMzOhsve1rRhIVfe2ibcC9oD39 niK0irRzF29ppD02BNEMPeJqYuO3VA4= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=sNDSyKfF; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf18.hostedemail.com: domain of kent.overstreet@linux.dev designates 91.218.175.54 as permitted sender) smtp.mailfrom=kent.overstreet@linux.dev ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1684430641; a=rsa-sha256; cv=none; b=UIC7LcQsiq0XPFu7jZyjXrozpBeqsRyHSzUBctosP9qPc/osg/pfWHAGcQNUqlPIsux5mj 7qkO2AFdxNhRK9Q+Z9RwpZ+1UrcIX2/j0+W6jfypofUFMJbjCg3uElwBHF75EgKUFZ7gea rgYKBMjCC2POvVJAXocjuHeCfbvdAwg= Date: Thu, 18 May 2023 13:23:56 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1684430639; h=from:from: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; bh=eK2qQ4usiSIYSyupOId390QtbQqfKan1m34h+LbEFPM=; b=sNDSyKfF6gvVSnJyc248USU5TpD5hQ7R2ejhfCUpcw5itifMC39wJp2ehWtP2bP0CjYZI+ deFH0WplYGLa0sF1XjsHluZnFa8Xv9630WKMzq2MgOCR+jJrtPvpzmwEDCuYnQgr2IfO78 JcTWEMEbSEPgVNsTiwo1CaK0bi5kRFc= X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Kent Overstreet To: Song Liu Cc: Mike Rapoport , linux-mm@kvack.org, Andrew Morton , Dave Hansen , Peter Zijlstra , Rick Edgecombe , Thomas Gleixner , Vlastimil Babka , linux-kernel@vger.kernel.org, x86@kernel.org Subject: Re: [RFC PATCH 1/5] mm: intorduce __GFP_UNMAPPED and unmapped_alloc() Message-ID: References: <20230308094106.227365-1-rppt@kernel.org> <20230308094106.227365-2-rppt@kernel.org> <20230518152354.GD4967@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Migadu-Flow: FLOW_OUT X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: CBAD81C0004 X-Stat-Signature: e8pjfawekkq9awseyzdhty5mktoq688u X-Rspam-User: X-HE-Tag: 1684430640-251034 X-HE-Meta: U2FsdGVkX185dyOYygQMixBd/EMl6mxCB5ALdbmwXfhZY+MDApCPPFaMVDWQbDL5tb08bQfISm/SjEaAXAJdhiF26FBS4RysZK/7Z/AB7R5eotVV4OsRtNv1ywxjwOSNKnj2YI65EiDjoFista/0I6qefDqeL9yUUGaotnyJroCwC/mGKdlQEq4kT/HZtxfWCQlgCXNw6pwBt2SLcVT609DjnLjl+4IT8Vah8+8IULMMdddqbfqXEv5P65UjXKRI0eksefLjG3eef+uUg27iR91UEoVNopMipRKgbKYvHrv1+LOOUsRBX4XtL9SQ8meoQ6cF2HumClSQs6iY6ATgeFkTykJrMwiO1X4v/vcUHG+KVktmWMj6ZrWBaCjj0SsCRAPl811fGfdGpxr5i/IBTZKhC6MGfvLlglgomrO7x0O333IYCVZXZEgocVcmwwO7eqNImlLwvRESDlmfVicplOWsGksat0gG7LitAVlW+alpKAF/VysNirG6qIJEI02ofCsEwjqy/D1Uc1VmecRUWx6D/uUkaR4poAwD32u9K1k/z0pYjCuDg+ErehdHhJ2ufiOATI/dXJLXfHDldyan9ymV+ULi6STw1SQnK4h7S53uylD8MHcRz4qumZ51X9223LurtdA3kQcSUplfdmnbGwglamXU5PFewI9PEo0/BeRY/KaEmu+nHByDLkeML5y5xSqe2gWPNvRkTfRjJpBlOMOORI1ih0qVxAUmafIdlKufdBMYx690BQU9BP+1NDUwykQ1ENfh2ayJTQ6+Ob4l7vQWNgWx5mJkFWUWe2jB4TtlH1FdQjAU5wmEmoo4OBdsOsw1mqQeYVkwZ0hzzGAUIY/kBoVZGzAtTWaI38RoBVNtxRQg2qecYiTkfDkPgXI3b8fGI5dzJzQlv2s9UEM3imO0AXlO08+BtMtl47pd8y6QxCipz7Crs1o8r3q+iqP5HJrsz7Izy2RvSohKJv6 oqC2WiEx wegiO1pb4MoGEH516u2VHivBLbbvIPM60alLP84fVCF5VAMX3DCbbLrnpd40Apyg2hhL6lzPvsugl0ZrUkZKbEx/DxT6dTPOgu/L9 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 Thu, May 18, 2023 at 10:00:39AM -0700, Song Liu wrote: > On Thu, May 18, 2023 at 9:48 AM Kent Overstreet > wrote: > > > > On Thu, May 18, 2023 at 09:33:20AM -0700, Song Liu wrote: > > > I am working on patches based on the discussion in [1]. I am planning to > > > send v1 for review in a week or so. > > > > Hey Song, I was reviewing that thread too, > > > > Are you taking a different approach based on Thomas's feedback? I think > > he had some fair points in that thread. > > Yes, the API is based on Thomas's suggestion, like 90% from the discussions. > > > > > My own feeling is that the buddy allocator is our tool for allocating > > larger variable sized physically contiguous allocations, so I'd like to > > see something based on that - I think we could do a hybrid buddy/slab > > allocator approach, like we have for regular memory allocations. > > I am planning to implement the allocator based on this (reuse > vmap_area logic): Ah, you're still doing vmap_area approach. Mike's approach looks like it'll be _much_ lighter weight and higher performance, to me. vmalloc is known to be slow compared to the buddy allocator, and with Mike's approach we're only modifying mappings once per 2 MB chunk. I don't see anything in your code for sub-page sized allocations too, so perhaps I should keep going with my slab allocator. Could you share your thoughts on your approach vs. Mike's? I'm newer to this area of the code than you two so maybe there's an angle I've missed :)