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 6EDB1C38A2D for ; Mon, 24 Oct 2022 17:03:39 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0CE50940008; Mon, 24 Oct 2022 13:03:39 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 07EB6940007; Mon, 24 Oct 2022 13:03:39 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E8948940008; Mon, 24 Oct 2022 13:03:38 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id D713E940007 for ; Mon, 24 Oct 2022 13:03:38 -0400 (EDT) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id AB9D380CE9 for ; Mon, 24 Oct 2022 17:03:38 +0000 (UTC) X-FDA: 80056464516.02.7795DEF Received: from mail-pf1-f178.google.com (mail-pf1-f178.google.com [209.85.210.178]) by imf02.hostedemail.com (Postfix) with ESMTP id 301DB8000B for ; Mon, 24 Oct 2022 17:03:37 +0000 (UTC) Received: by mail-pf1-f178.google.com with SMTP id g16so4043802pfr.12 for ; Mon, 24 Oct 2022 10:03:37 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=SNF81HjPeg63b6+jdQdpQLgEMtIaJrnM5MbXRIwld1I=; b=qX0gOcOOZrZr6gfBwo4xUowYx7Cnaji08hoqrfObG5aAmQDwZzm2TsqgD4nblTOMeg rOSzH7qQy2/UJuHKqTib+7oycX9nHJQi9C3lvU43KyAWGDHnIT9jrqIffcaUeYkjk1DU +WUTkGLDg4s02vQd+AVn6kFQtNBhaYChdWKozM7QYJbnZv1PIROJufbHTkH+jV/VUAwE 7sJjneIFxRCzY7fLpsGLet2DSAyCMxO0j4WdCCMPo9cjq3WTXxExNnB3sU3j+RrQUo99 jIrd6PNpAge7EvPHe2U8lrDp0ZXGHogVjcVMm2YZieJ2bZL/kZ4Pwrv22JajoO4A1nan MwYQ== X-Gm-Message-State: ACrzQf32vfTMatk9u0gtmj10SVtz84jCJG1JS7KJpPXoDgdAw5nQmtBG jZ1OFESIneIqhszWbUTT29U= X-Google-Smtp-Source: AMsMyM6r3j9X+b9oTmR2djXqM539RQeRKB549uOmcwIHFQn55wsGQIbLUkBRvxstgz1LVTADSPuf6Q== X-Received: by 2002:a05:6a00:16c8:b0:53b:3b9f:7283 with SMTP id l8-20020a056a0016c800b0053b3b9f7283mr34350371pfc.46.1666631017116; Mon, 24 Oct 2022 10:03:37 -0700 (PDT) Received: from fedora (136-24-99-118.cab.webpass.net. [136.24.99.118]) by smtp.gmail.com with ESMTPSA id t7-20020a170902e84700b00176b3d7db49sm25884plg.0.2022.10.24.10.03.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 24 Oct 2022 10:03:36 -0700 (PDT) Date: Mon, 24 Oct 2022 10:03:33 -0700 From: Dennis Zhou To: Baoquan He Cc: linux-kernel@vger.kernel.org, Tejun Heo , Christoph Lameter , Andrew Morton , linux-mm@kvack.org, Pekka Enberg , David Rientjes , Joonsoo Kim , Vlastimil Babka , Roman Gushchin , Hyeonggon Yoo <42.hyeyoo@gmail.com> Subject: Re: [PATCH 8/8] mm/slub, percpu: correct the calculation of early percpu allocation size Message-ID: References: <20221024081435.204970-1-bhe@redhat.com> <20221024081435.204970-9-bhe@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20221024081435.204970-9-bhe@redhat.com> ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1666631018; a=rsa-sha256; cv=none; b=HnldaaZTRabNcziHIondsmip1uRw8UBjii8U9yLGOAtTsIe0pYu6P5Fn21JW6kMUIdixjY QjpQjPvTX3gctBK/SnT1ec7HwlolzJcrpgNIyL9iQPo6dxb/Ex0vgDLkO4jeaRtXYD5yTH F+MuYGhsbQeWWQMhUhZmMm8rnlndSiI= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=kernel.org (policy=none); spf=pass (imf02.hostedemail.com: domain of dennisszhou@gmail.com designates 209.85.210.178 as permitted sender) smtp.mailfrom=dennisszhou@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1666631018; 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; bh=SNF81HjPeg63b6+jdQdpQLgEMtIaJrnM5MbXRIwld1I=; b=cgezF1nuDt8okVdmJTTaFG8sBWMhJ9Yy6W6PpG8TiCTiqmIdaENM/dDlzDbzzJSqELLXOC /bM8lK5SvUODpKjt/waq6Py5c8HEzaY67cEue7F3bcGU6GOyH349duLSIssS853Yj9V81g nqdA3Z3Z72vLyG2pav1wr14/wno+wow= X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 301DB8000B X-Rspam-User: Authentication-Results: imf02.hostedemail.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=kernel.org (policy=none); spf=pass (imf02.hostedemail.com: domain of dennisszhou@gmail.com designates 209.85.210.178 as permitted sender) smtp.mailfrom=dennisszhou@gmail.com X-Stat-Signature: bm5tqehb4si4qapgygmyumyrpemidaxo X-HE-Tag: 1666631017-260295 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 Mon, Oct 24, 2022 at 04:14:35PM +0800, Baoquan He wrote: > SLUB allocator relies on percpu allocator to initialize its ->cpu_slab > during early boot. For that, the dynamic chunk of percpu which serves > the early allocation need be large enough to satisfy the kmalloc > creation. > > However, the current BUILD_BUG_ON() in alloc_kmem_cache_cpus() doesn't > consider the kmalloc array with NR_KMALLOC_TYPES length. Fix that > with correct calculation. > > Signed-off-by: Baoquan He > Cc: Christoph Lameter > Cc: Pekka Enberg > Cc: David Rientjes > Cc: Joonsoo Kim > Cc: Andrew Morton > Cc: Vlastimil Babka > Cc: Roman Gushchin > Cc: Hyeonggon Yoo <42.hyeyoo@gmail.com> > --- > mm/slub.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/mm/slub.c b/mm/slub.c > index 157527d7101b..8ac3bb9a122a 100644 > --- a/mm/slub.c > +++ b/mm/slub.c > @@ -4017,7 +4017,8 @@ init_kmem_cache_node(struct kmem_cache_node *n) > static inline int alloc_kmem_cache_cpus(struct kmem_cache *s) > { > BUILD_BUG_ON(PERCPU_DYNAMIC_EARLY_SIZE < > - KMALLOC_SHIFT_HIGH * sizeof(struct kmem_cache_cpu)); > + NR_KMALLOC_TYPES * KMALLOC_SHIFT_HIGH * > + sizeof(struct kmem_cache_cpu)); > > /* > * Must align to double word boundary for the double cmpxchg > -- > 2.34.1 > Acked-by: Dennis Zhou Thanks, Dennis