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 37633C4345F for ; Mon, 22 Apr 2024 00:28:45 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 28A616B007B; Sun, 21 Apr 2024 20:28:44 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 23A206B0082; Sun, 21 Apr 2024 20:28:44 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 102696B0083; Sun, 21 Apr 2024 20:28:44 -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 E76356B007B for ; Sun, 21 Apr 2024 20:28:43 -0400 (EDT) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 5EE78140701 for ; Mon, 22 Apr 2024 00:28:43 +0000 (UTC) X-FDA: 82035282126.15.197230D Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) by imf17.hostedemail.com (Postfix) with ESMTP id A775740007 for ; Mon, 22 Apr 2024 00:28:41 +0000 (UTC) Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=rBtAntjH; spf=pass (imf17.hostedemail.com: domain of rientjes@google.com designates 209.85.214.180 as permitted sender) smtp.mailfrom=rientjes@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1713745721; 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=jthu4fxdnhWmlYtpaP1tHh/FEce8bGLrM4dsRQpcrzo=; b=x2GbRHFl7QQA7KQUT0SoTxub5rh1e6edT1zMln4OnAYhW9KXAxqsGMrseeJJ7BruEj+0O8 s4NqEkaz6eFVYna3vPKXuG4ykmcAfkFxkp/hrLDxfHIeML1Bope3TbBvTA3P2rosGRjJDb UOWzwwA5W4Lho8IJl5X2jQaSHKZSK6c= ARC-Authentication-Results: i=1; imf17.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=rBtAntjH; spf=pass (imf17.hostedemail.com: domain of rientjes@google.com designates 209.85.214.180 as permitted sender) smtp.mailfrom=rientjes@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1713745721; a=rsa-sha256; cv=none; b=T69qd/G86UO4npyrRqAZ4cMrYpLRapGF3AS6vrgUTcoMP8SubB1yLEHdcTRgq1it1rNzjT WjhhglXct2ny5PPtFe3358xZR90ICRzkZs0BeIEsgAqPtJ2v5GbagET/qvSSQ04NCg/4bF Qfz+wHiQ2j/C/ZnDFVjkphxFHTRWERk= Received: by mail-pl1-f180.google.com with SMTP id d9443c01a7336-1e44f82ff9cso122385ad.1 for ; Sun, 21 Apr 2024 17:28:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1713745720; x=1714350520; darn=kvack.org; h=mime-version:references:message-id:in-reply-to:subject:cc:to:from :date:from:to:cc:subject:date:message-id:reply-to; bh=jthu4fxdnhWmlYtpaP1tHh/FEce8bGLrM4dsRQpcrzo=; b=rBtAntjHqG+oossR1MVsDTn/B6mMHBeP0D5ZzexLkkVepGZOZS012hXJ5KAxuvFu7U zw5UYl+k4QyOrFO3r9NxVQX9ykyS+ioOO4RCGx88VNQzNGwIWKwCQ9pfN+7nJsEpMVHD 2x6/xoIa4ipT0T584kHjdmvSvT7PMNfkjD2yD5gQYSldrlcwNlDfcdLSbD4IonbtI1e0 qmAdj07Ubz01Qx+N7wQm4OT/SE+YER2cs0rdDH7SkJtnpg1VvfXFp4zijfGar2iSB8Bt D+/+12j3Fxm3nSYyE5XbEYOViWQpDnWYArqaSKssyhgqbsIJk+oPJd0404kSLOQ/jPXz epBg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713745720; x=1714350520; h=mime-version:references:message-id:in-reply-to:subject:cc:to:from :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=jthu4fxdnhWmlYtpaP1tHh/FEce8bGLrM4dsRQpcrzo=; b=QdEyn1SdrT5xsMLPYOPAE0EQ/qi9uv1/fy4pLkYu9G2zyfgbD4iMeu3T6vF6n2iCYm hJusAtSMoLjss2tekMQNS6FKDVJbjE4800ATaL77ZZiLf8zCla6fRxLBQijnRHoMlGXc QkcCde3h4SgPXEpGDz0OETi1TULdHPnWlRUbMffLZlT7GhQ4bwjnVsGD4AkZ6HfW2RX0 qTeMV3BwHEX0wF549irGP1/YtrLTbN8yOnstg6kXsn77RsxbT0Ywl1oSKU9DPP21f6aV ANTOHlGeDtG82O8s0/2wCvRKPvdtsWNEu9Ng8SsD/lnB/93Q094ItDzhm5Svym16fCaZ uC/w== X-Gm-Message-State: AOJu0YyKNFe6GLvCQoFXPFmJoLEL9kIdMw5NkgaUZxPX27tAXZGx7SBZ pl9NYgrS3Knme329GV/Y13VuhcnlTIjTSMyQiF1Q3sGWUij31qx8BQg979vyqsAJIMfxtX2H34f j+Q== X-Google-Smtp-Source: AGHT+IELrlYHXuocdIzhy2qsYU8Y7Ryes1Wow1mNTsDR5yMHOWcfvg6gIi2pX+sU6dqArx38mpn9AA== X-Received: by 2002:a17:903:228e:b0:1e4:3c7f:c44d with SMTP id b14-20020a170903228e00b001e43c7fc44dmr233813plh.8.1713745720133; Sun, 21 Apr 2024 17:28:40 -0700 (PDT) Received: from [2620:0:1008:15:9378:eb75:c712:8873] ([2620:0:1008:15:9378:eb75:c712:8873]) by smtp.gmail.com with ESMTPSA id v10-20020a63b64a000000b005f3c84e12c9sm5709324pgt.48.2024.04.21.17.28.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 21 Apr 2024 17:28:39 -0700 (PDT) Date: Sun, 21 Apr 2024 17:28:38 -0700 (PDT) From: David Rientjes To: Hyunmin Lee cc: linux-mm@kvack.org, Christoph Lameter , Pekka Enberg , Joonsoo Kim , Andrew Morton , Vlastimil Babka , Roman Gushchin , Hyeonggon Yoo <42.hyeyoo@gmail.com> Subject: Re: [PATCH] mm/slub: create kmalloc 96 and 192 caches regardless cache size order In-Reply-To: <20240420062954.6816-1-hyunminlr@gmail.com> Message-ID: <6ffc3e46-a67c-0de2-6708-3900d9210350@google.com> References: <20240420062954.6816-1-hyunminlr@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-Stat-Signature: cj415a6kjumk8x3nc4mjr7dmdp8s3nxh X-Rspamd-Queue-Id: A775740007 X-Rspamd-Server: rspam02 X-Rspam-User: X-HE-Tag: 1713745721-588256 X-HE-Meta: U2FsdGVkX1/Q/Ze7o4APzN5dbN17bu3HkGHAi2wPi1hTrCEkPOwVBcYDA0UPIIO7YU5NCRnbXVX8MAq9uGWp3CCRPw1+Lsty7RDLTSUuiI+zzsnrvuCo4Dqj8fyvTdGX73OYYUtG4bErcXlkEJ2QQuB0rDUPXoLokz1NdO6Zy4BPaJZND0DLsl7AsmIWS/orpTeFL2uaz2HJMcjpYcy9kymXM0XyRbeVud9IyzrGfol4o0j7fadkoiTScB4CQD/rX5zotOYTZYQihVJtyPgHLC3ShsBUXF8pBHUjfxc6b25sqpnHZZHO1iK6UL9m8yar4uGhxaplrXJNx9g+SIf0euWH5aTJ6Tx0e4ejSOjFmEwxncUanqgQ0UZ5MJU+RmmBOM9IyErgLzQcm45fcuMioniDrPWc6mCu1fHxS3/jq3obBH3bAwO5PIGFxvDp46fPbcMxSfjYBOjCyPoF91GIXRj3Uk+zgFaBTcAY5KYhASr88Vp3mxvhbyhlrrHuS1ESq+js/xatM/YMPsHY26JfLFoyugnLE/bo2nU+mNmzDw07QHeYAeuM+w8DQuvyrFVO/IToXs7pl9LJVRzv8mon8HkcFcvUgSpkstJj+rs7ib2TMNEm1J9uMX608XWt+mMKZ01G18OWm8FScjfaIxAl9oPrx/2nMX3mLckWOob3vgoimrhqQ/3GT5SOet0PAlLxVks7wj1h/cS3UHJpJp/jfsbduiDLTem0i7q//ZOYsbCDkRSO42DW9GukbrLBiQGVuIYnyCn/AFQyRnAHQ9NHnZlqTx3wVIdJYExJL3QgiZuIm7f9sxTWeWputosajIud7uzWboSeOojWKxFukgz+qD01dx244zbFWrG/q9v/tkztdVP4qJqB6cEyicK9tlSl/Y0nT4PeBfHjOb3Eqx936NjM2Ri7XKillx6ItZNfAGJ3jK8RpVq1zgVGqcCQBhSX9C+3/KB6iv8jXkOqF4R dKf+21lh FA2BC4B8WlS56CIXev32zRTTLKlmalGc9VUnU4tlgN/AQvKh4p1qMky25PdD8ks2cP9Kqga46j7dOuZqlfHpw3/iAviPQphuFw91GB6HqkQCC+35VCAZi4Vdgmub1sNHuCpDDftMcOCeVLFUfc8ukRXtOMxUxNMYj5e/yFZj51z/S77MlQcpv6oFFD25ghDz36Cr5FFIAAIKQEWcqob6ACNWAHQw5AUMhhKxzIsC2f018dS4QZuhUMuP2zR3IcfwhJchpdW4kW5L0Yc4pkirnfHjFJ9lP7zQpL5+8MOs5rDg8HlC9ENhRyL94xy4rY32iRvYW7Fsn1FH9gzlJecWRCoFXmxEb/Jywfp5486euZzw29po1xf4tfucDjIBXf/1yd9M/hn/1+9UpfS0fFsxtRxNOuwnAWsxDtDzQKYIhWlff/xo3t6G5McOL2yxQViB8I0rht4ZycR/l9oHXu+I39B6KDaIc2V3eO+Cv 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 Sat, 20 Apr 2024, Hyunmin Lee wrote: > diff --git a/mm/slab_common.c b/mm/slab_common.c > index 3179a6aeffc5..c3271b17eb76 100644 > --- a/mm/slab_common.c > +++ b/mm/slab_common.c > @@ -919,19 +919,12 @@ void __init create_kmalloc_caches(void) > for (i = KMALLOC_SHIFT_LOW; i <= KMALLOC_SHIFT_HIGH; i++) { > if (!kmalloc_caches[type][i]) > new_kmalloc_cache(i, type); > - > - /* > - * Caches that are not of the two-to-the-power-of size. > - * These have to be created immediately after the > - * earlier power of two caches > - */ > - if (KMALLOC_MIN_SIZE <= 32 && i == 6 && > - !kmalloc_caches[type][1]) > - new_kmalloc_cache(1, type); > - if (KMALLOC_MIN_SIZE <= 64 && i == 7 && > - !kmalloc_caches[type][2]) > - new_kmalloc_cache(2, type); > } > + > + if (KMALLOC_MIN_SIZE <= 32 && !kmalloc_caches[type][1]) > + new_kmalloc_cache(1, type); > + if (KMALLOC_MIN_SIZE <= 64 && !kmalloc_caches[type][2]) > + new_kmalloc_cache(2, type); > } > #ifdef CONFIG_RANDOM_KMALLOC_CACHES > random_kmalloc_seed = get_random_u64(); No objection to this, but it would be nice to continue to have a comment about why these slab caches are special. Another thought: can we move the check for NULL kmalloc_caches to new_kmalloc_cache() instead of handling it in the caller?