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 EED7BC3ABDD for ; Tue, 20 May 2025 12:26:16 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7428A6B0088; Tue, 20 May 2025 08:26:16 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 7193A6B0089; Tue, 20 May 2025 08:26:16 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 6575A6B008A; Tue, 20 May 2025 08:26:16 -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 408826B0088 for ; Tue, 20 May 2025 08:26:16 -0400 (EDT) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id A33DB5E09E for ; Tue, 20 May 2025 12:26:15 +0000 (UTC) X-FDA: 83463208710.12.6F8F6E9 Received: from mail-oa1-f52.google.com (mail-oa1-f52.google.com [209.85.160.52]) by imf02.hostedemail.com (Postfix) with ESMTP id D990080009 for ; Tue, 20 May 2025 12:26:13 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=ILYv4282; spf=pass (imf02.hostedemail.com: domain of usamaarif642@gmail.com designates 209.85.160.52 as permitted sender) smtp.mailfrom=usamaarif642@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1747743973; a=rsa-sha256; cv=none; b=cBg2UFN4M0BtNqMzpJhyfFgAz/MpzD2zVZiGoJ2rFVquC2KH7fEuT/sUiRpYIZWtGO+9We /QgR+Y6LZpOu8yOhK8+VX3Z0/TXi0+ymi9Em0r26W5RlOu848oWYtHcU09oy6qqEiMHFTF 27vq/lyU+1zSUj9suuyC02NPRU39vCI= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=ILYv4282; spf=pass (imf02.hostedemail.com: domain of usamaarif642@gmail.com designates 209.85.160.52 as permitted sender) smtp.mailfrom=usamaarif642@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=1747743973; 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-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=eDPheIrp0fqErLgYkpz9GaxvmJrQjKvco7dUB64QMfw=; b=cYMQcjFk7U80ntaGRFc0rjJn625CIHYvN95DIteISVCHUjwTix2Ri99UgTx73XqiJK52cr yzwdU64+RdrliGp5VNPZ7DSMKp4f0ZAmnZz1jLGqcW6TkI5Lp9VvFqBveFS7JdYVwlwj7s xj9WZhhfU3yfojHKalfDHwYJGV3LU0k= Received: by mail-oa1-f52.google.com with SMTP id 586e51a60fabf-2c769da02b0so3306810fac.3 for ; Tue, 20 May 2025 05:26:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1747743973; x=1748348773; darn=kvack.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=eDPheIrp0fqErLgYkpz9GaxvmJrQjKvco7dUB64QMfw=; b=ILYv4282o2aSlMcDzPnmmU/B7xdy+chmY26r48OB52J2x6GP+cvyFg1uxcfR/ar98x ucu8vnkkCutJnykggXXc5Zo+A+QIcm/TkoI9qMgH7jmQPPDswxXX5yEL1mS1sW+ONeF6 sPhplZviB5W5IPcFBBpANwYqaNnf8VI0JZvd9F74ezD4xDLfwfw0I9T9b3WbmKOdQBaa nXD/AhEmURG2z3w9NdPOxFDEAf3viRpEjc4+wuSVqAKpUboBP+gJv2ZgUnWGIaQqpg6n 50ChRk2gCmLyfxRMZlyHtzvSt9cEb2/q2Q07nj8ZRVMZoMV414HUT2Ki8z6WhE9mqonE dJtA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747743973; x=1748348773; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=eDPheIrp0fqErLgYkpz9GaxvmJrQjKvco7dUB64QMfw=; b=UPgTmv8zXCfazD+3awx1MLfO1rhCEjSox82ACAKbhjW1Puw8j0dSNIWhtPaTI08ZSd 4gaWD1d1vMqJJgADWJNvWSjYgWN7DnEanjNmdDp4Por1okfnfUxGb7ALI4tlFezhMYsS gEKZFyU+Tm3fFqMPElyplxqOiKN0lW3egcKBnEwKFmC3l+7X0v9mJAJc32m5NdzJPd9P fe+IXXLJoiVqIKFGXCW+jX5lmP70x4OfYgZZkkI/6AREHrHCgssqy8x/OT/Ec/Y1f5+J kgtL9DWSYWYJUrY3370nurBb45L0V3SNXqpLgX3OfqkkuycY5yxUuzfCwrsbzCZ8y6S8 jUXg== X-Forwarded-Encrypted: i=1; AJvYcCVkxrwOxnOHyNZ15NYMEsa9oZczIedPJtOlrHP+eubhDykARbCOKA4m/Pj4riMKyC2HyzqeG3s1Kg==@kvack.org X-Gm-Message-State: AOJu0Ywwut87ewoapOEWK/S0+d3vb+TbiBs9GTF8WvxZDn35KLfC3luM AQhvrnpBLQ4YKsJvQAEPFq1HSiZHAkA+IfsSwrXCCnmTkTfMNChbURZj7DVCzQbc X-Gm-Gg: ASbGnctJmvmWkhQA2o6493zGjzoNRCiO7eyJKNvjHm2Ls3383gqTQBUnxdkbOuG/JfK 2IWTaf9oOmqQgZKfDdoCwxN1YdyeZGkKmezUwMlGk3J5ZN2aqj/FCKF1uXJ0MzwEwCWfpjz9Rpm rU9fEdj5hwbmyCs6+WBqdFGtnS7eDUrPKmHesq6Set83+Ak0kkXUVrcrH5+ULgtsioj4NBVGC8R rjvI2De/mrOQKy9cR8ndj6xKCIBUS3yQ/psQ8BE/ZjFlTWE94ItQ6rpWKlc3CRbZk+BZtKdu02N IcGrgrOTeTHOZxxeMyV4c4M1cTv6I2Pj/m7Jc1/2U20fqMc3 X-Google-Smtp-Source: AGHT+IFUOHS9yLvKj9NZ9wKJYyBAWKUVRFOj4PSguUJ46Iyb32cjwBy2K5MN3bwdmiZOdBi4VX/MEA== X-Received: by 2002:a05:620a:2955:b0:7c7:93c7:f35d with SMTP id af79cd13be357-7cd4673c076mr2297280785a.31.1747743962173; Tue, 20 May 2025 05:26:02 -0700 (PDT) Received: from localhost ([2a03:2880:20ff:3::]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7cd467d7ee8sm731753385a.26.2025.05.20.05.26.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 May 2025 05:26:01 -0700 (PDT) From: Usama Arif To: Andrew Morton , surenb@google.com Cc: hannes@cmpxchg.org, shakeel.butt@linux.dev, vlad.wing@gmail.com, linux-mm@kvack.org, kent.overstreet@linux.dev, linux-kernel@vger.kernel.org, kernel-team@meta.com, Usama Arif Subject: [PATCH 1/2] mm: slub: allocate slab object extensions non-contiguously Date: Tue, 20 May 2025 13:25:46 +0100 Message-ID: <20250520122547.1317050-1-usamaarif642@gmail.com> X-Mailer: git-send-email 2.47.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspam-User: X-Rspamd-Server: rspam01 X-Rspamd-Queue-Id: D990080009 X-Stat-Signature: yw6zdmgcudi7npzc4ixs6c3chwrfpgq6 X-HE-Tag: 1747743973-301332 X-HE-Meta: U2FsdGVkX1+wFZbjldc6JpZW3zcsPJgkK5Hr+D+u17pJaWB2Z1N+MKQNOlq98pjmIokkzrpUqvKksJy9L35+4W5oe9QtII+CHLEOme+4E36M9xVPBcOA7Rv18zMWsxGud7G+Wt4Xlhxv4Gq19GqYkw4LoNIWY2x39NucCfgU2GTn/KlHEwNFPQxxjHk9QVSq8ttrgBplT3TEUKzVMOD6LUr5H02OnvHkLAv1DI8l8WhzRdIikwrgXxpoifCsEyuvvANmldbST8CSQvVr78Uxt7MViyQFD7spmRy/7tVbK9UFb61bsmBOwc2xYcUwc3y8AIdtWjRQQYBc4zJTLH0eBVh8reBXFNd6LkIa94dNZF2+A4tMh8mmDzkumIxlMUeeVM9dLY2G/rRZXj61omWqn5L2jx0cNOqpDVBQwNHpbqWFfp1sZWjjE1s0XUSIRBmEfumYT4lHLFIfSPPuyz2yU7Ci36J066G4PVHHYCqesNGOe7S2V4wCNLNq0ziU8inXXWv2QxNWfsDuf7RsjF0SPXPXgYj7Oo3hLP11KONhS2bEdSJwzT+G322EzXraUNaXePb78LtNTjkDZIfyKcPzEtj91UE3tZcShxJpgPYXlCXZSTCGV9fcZsJnhoMQA/jt9hrDpzodXRuWgoBg1WV+05jHYpKPr/xhMGIsXYthmxDsfPgsUq4R/x06J5qCgvo2Bh8ex7aj+lAz0ISuj/kxxu88eQoUCjv6RDlmz9L3/sbT3duxlUeyOIvg3J+8C7z74V8T0t5gI2HuvIm/8QC2oQb/JOMaRc2OSQkdH1Rkr+7FQze3GbANGRlGlPfHhgHq/fs0LcF1kveqRqAdAOdTYgy2fvSUEfAVOqydz6dGr7wehaJ4WePFPlr9rlhtyXVN2XNe+DeQk/TItg1PFPXZEAVRVA0zOyQMtkw1qj7VD9aG+EnE4tY1Jjq7Cg7MFovuiODpoTWm0LP1Zq3ypaf lMX0lQs4 RxiCK7uR/8Wftfzya13oeAva/sX9N1BsB0cVVyboBkTkhhKAgjI6PRAMhLCXQqxZ7/+4e41OKtx6fz4p6P64ReN8CNXztpcgw/kXLIaHWWXPOirCp5a5VsE0vCCmFZQwusPgaJvU2fQBt2zCaMpRkh32zCT28IE1tAXg37YWvuhuzZ3bACV+5rVTeAusI70VPy3Z8RpEGAWOenNQ2i2e2pa6hoZ5vapXFANMfjJh1CxK3jY4UpTFAxdS4rXDk4JKS9pNU5Eg/ryuLEaUDQ9MEHcRsFzBbOd9Vl+u6IkF2jwUV5eHwnamR2Ksflsuwo2IDHEZjhGbR8xzM7Sr3q6sLmh/NcVFEKiEl8Vg1bjcQY3vh5RXvTsOZM1BMwoQKAyQQGdqhCDyy2a/iXQG+fCCnP8LaIZCC/GbiL56lbAf/w8casOa1tOWVqHRGuDBHaG5VyLIKKeJO/J7laSxf9IJY/9g4H+BFBss4P9FZNWtwxYTePvCMggk3zrKNFsJxckkBeaktTaLMNyGZVlx2HX6XVhvZa785WyhhzpgiV/x8KLdaMDE= 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: When memory allocation profiling is running on memory bound services, allocations greater than order 0 for slab object extensions can fail, for e.g. zs_handle zswap slab which will be 512 objsperslab x 16 bytes per slabobj_ext (order 1 allocation). Use kvcalloc to improve chances of the allocation being successful. Signed-off-by: Usama Arif Reported-by: Vlad Poenaru Closes: https://lore.kernel.org/all/17fab2d6-5a74-4573-bcc3-b75951508f0a@gmail.com/ --- mm/slub.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mm/slub.c b/mm/slub.c index dc9e729e1d26..bf43c403ead2 100644 --- a/mm/slub.c +++ b/mm/slub.c @@ -1989,7 +1989,7 @@ int alloc_slab_obj_exts(struct slab *slab, struct kmem_cache *s, gfp &= ~OBJCGS_CLEAR_MASK; /* Prevent recursive extension vector allocation */ gfp |= __GFP_NO_OBJ_EXT; - vec = kcalloc_node(objects, sizeof(struct slabobj_ext), gfp, + vec = kvcalloc_node(objects, sizeof(struct slabobj_ext), gfp, slab_nid(slab)); if (!vec) { /* Mark vectors which failed to allocate */ -- 2.47.1