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 45E66C52D7D for ; Fri, 16 Aug 2024 12:18:13 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 87A3D8D007B; Fri, 16 Aug 2024 08:18:12 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 8290B8D0075; Fri, 16 Aug 2024 08:18:12 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 73FF28D007B; Fri, 16 Aug 2024 08:18:12 -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 53FF38D0075 for ; Fri, 16 Aug 2024 08:18:12 -0400 (EDT) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id D1B341C5895 for ; Fri, 16 Aug 2024 12:18:11 +0000 (UTC) X-FDA: 82458010782.14.8E6A170 Received: from mail-ua1-f42.google.com (mail-ua1-f42.google.com [209.85.222.42]) by imf13.hostedemail.com (Postfix) with ESMTP id D5BA32001E for ; Fri, 16 Aug 2024 12:18:09 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b="R7B/Mwie"; spf=pass (imf13.hostedemail.com: domain of pedro.falcato@gmail.com designates 209.85.222.42 as permitted sender) smtp.mailfrom=pedro.falcato@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1723810652; a=rsa-sha256; cv=none; b=aI37vk8tgWVq+3tQQuz3C/fsqYpQtO2aKhzbNFgyQbucab6wMAB39xk5bP3kc6s9jkYiok Tmq1T0ufk1FW6ET0W2MHP+ln45+TBi6yI0OSl2WNqK0in14qn1eb3EifroJ17JTvmRZVJB wFFgw6ZwYjsYm00YAw94bFYMpnDClG8= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b="R7B/Mwie"; spf=pass (imf13.hostedemail.com: domain of pedro.falcato@gmail.com designates 209.85.222.42 as permitted sender) smtp.mailfrom=pedro.falcato@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=1723810652; 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=ypdZtxVWZEvMrrAE4BHjMdvp8EAGZSUhh00ZRWVJC6s=; b=P0EdoNx9AZMkPICqoFSqCSCeCua8ZUj2C5iKCg4k3Ou/otoJ6h9Zr0KKq1h8yULQmQh4w6 VvjtF7uMTIQcputhfQN4xsswpO4UDzfifz9JHZ7VKkzn4cvl4LDhafJdmopQ2i3MHD95Sr 39pTPI2JiE5TFPF4wp0HI6MjgS5bdec= Received: by mail-ua1-f42.google.com with SMTP id a1e0cc1a2514c-842f3f275d3so1064593241.1 for ; Fri, 16 Aug 2024 05:18:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1723810689; x=1724415489; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=ypdZtxVWZEvMrrAE4BHjMdvp8EAGZSUhh00ZRWVJC6s=; b=R7B/MwieAL2oEgJefQFk2ese4k5rel2di5uG2WahDBDiwqCldQdRInARX+a79Z8m6u iy0gejomltKZ63Rwnw96cY9MxkOCVftp1syfe55gAGOopBq1VGVlJZlj59tqwl9PE6wd aFV2OkSJj5dMOZSVjN9GyiBK31mAaTDNh++SU0NPTFHltdCnO5Gum0eT2vf90KsDIEwB hz/T62H9LHef1qOesu/DlXbFApwX+aW5cea15BkoAJfdbzEmXgGbn5La8OHtdc8nP0kF 162sn8PYMZZGYvSkwdF8C0pHU+npcAhrtvcqB82gs/v3g5AaVyxFVtizTKuRotxqcB+N SKyA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1723810689; x=1724415489; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ypdZtxVWZEvMrrAE4BHjMdvp8EAGZSUhh00ZRWVJC6s=; b=hWIgnmUASPpLKYlAksB3IwRncXSq5soiZCYWatyFmytGjUnIoEdtplvLF40cAXEGZg Vy0LPUVAMsH5eNRCjP/b58qSjGMKhdtva4V8lWXn0+syDJ5i0bvcORBKPQLWE/y97ni5 SqiaeRX356K7x8nmSIm7u0JxKLuI7FU5I6/G6x6jnSu3F/+ZzCd94aV1k8Vf+VAJE3K/ W88gHXIveqfEtp1ZEOnMyN8rBsg8JhQPTVYvl8rj2xNBO+JxwdRrUfVqRXMTXjAg8hhX OgJaQKwPrwDNbb2BpT0Mle8gDgp7wLbrauOPl07r4bYzZCtm3fFBpxnEvZr/8aYwfaKc ZJEg== X-Forwarded-Encrypted: i=1; AJvYcCWk3lg5xT1nJdfIwyaBprWcK14+gR23/usqzrb5CLlQ2MtKw+0oFLiSP6Y13c2dICohHRKmVLa0LHcgg9VS5NHxgcc= X-Gm-Message-State: AOJu0Yx2CwrdI82FcMEGSFfX7EWEiHk/yL9kRIZHGW6/CZog+HpXENJZ svTfBW+7asEDKkG7pfnkUXvM1ezdK95ZDkFWv/X0fzWJPTNSLM3euJ2MpgIm0QrSQTuFAtwtFOj U1Ds05vIAu5xEzFn9BX3mJWWNuB0= X-Google-Smtp-Source: AGHT+IHTIZxa99PI8Ipkj4HN42Y2mN/Pzb2xMa/vh4157p3qAiTKSC5msI7Nb9OD7IhyyHOKOO5SzAJG64Fla4dlsfc= X-Received: by 2002:a05:6102:cd4:b0:48f:3b56:a184 with SMTP id ada2fe7eead31-4976a56fff8mr3493717137.5.1723810688717; Fri, 16 Aug 2024 05:18:08 -0700 (PDT) MIME-Version: 1.0 References: <20240807090746.2146479-1-pedro.falcato@gmail.com> In-Reply-To: From: Pedro Falcato Date: Fri, 16 Aug 2024 13:17:57 +0100 Message-ID: Subject: Re: [PATCH v2] slab: Warn on duplicate cache names when DEBUG_VM=y To: David Rientjes Cc: Christoph Lameter , Pekka Enberg , Joonsoo Kim , Andrew Morton , Vlastimil Babka , Roman Gushchin , Hyeonggon Yoo <42.hyeyoo@gmail.com>, linux-mm@kvack.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Stat-Signature: me9aqt6wbncuk7dobka4b6xqcwm7jy3k X-Rspamd-Queue-Id: D5BA32001E X-Rspam-User: X-Rspamd-Server: rspam10 X-HE-Tag: 1723810689-549064 X-HE-Meta: U2FsdGVkX18cyY5lyPT+UUYH22p7g6rLbHmUG1uiM27AnYenVWGHsPIDOGYhoNxr3HaLv9/Lt3nBokO1dPeRzs/PmgD9QaRCheQ58fWZPorSWuOEfVAo3U+ry9kcCp1zi/ZMNyAFkZC0jY9ofQ1So+vIK2wMY/z7xX6ayQQdKIU/OCC1aBE7aS6wUurHNQ0EzUQEalaaiztFu2uMwWpxlHRNH93s5u2cyyN5jO6DePYczoryfpyBrxtfrfkso+Y43ctYPKMkkjJSEyu/aJa0qxpA2m0/YX1XhTb+d39PsSsN+9GRjG05+TMqsCSB3NCBpP8YYdxD1AKdB12op39Idb1cmdrO7C9XTMsEF1iNPjb1DefN0ipyUN2PkyJl9PB41cojlApV2ZLWW/u0fHn2JqfjZrS1ZtbiqHQ934rrRjV8LmMulZr/en8Rwd9MZ2M99clvtppYjsE9mWa49EveRgwarzL/t8eQlPQobslmFhTWGAw5TOIU+KoL4gXksXxAqxTv8+qPEl6I/76cSZxJGp0mDaNIV1jzFJYyQfaknxjCiT2JKcCcyZs9jcE9K24qn0bNpvmw9MyfYbTGz7PWvwWPW5RIyeKCg5iOtfq9OWawN+UUAI+I291ZJotwMw8b80SmBbg7aVcRAiJjEXTeXH1+qEgsozeQ+YFk7ac/Ky1USBA/Yw2+S09oLRp8GDGP/qpWjKv8nKDCtGU7X/rRQBYZJewIjLG7OA2P6WEzP/lsQ6ZIW4pDkoLa5EV3uKoe3hbLt71nlYG2nA5FZ9T3yIw2gRHaLLYrjSETsd6jPXWlJxJcWqQaaajoYEosvGv85CY5VA60HgKFjl8jGTvDgeO3Uc0+ZTxrepvR2XH9xSoUGpYJS6RVu0DmIioWkvKwbooBvwDao7zFOaB0elUlqtrROmB9BN2Xg/jDadvRxstpPpeWDi+WmgGFOzA0MhotHNCU+iaoelNmlOY8D7I sFken/LE cLv3aVqhQDyeR9dNrMjmmjaEE0I2PpQD+7efboYnJAcICIbvLlDV8XD0N0oJh7Jl88s0/q3C59bib8PMJwfwSTEJf2uRE3KdlNJE2axXa3kbReViskzki8yY0aWKyEnWQrgh7InTdLoWLx1S17tFE8NFASs4LJ87UhY8DpoEHT+QJLjz5epewAKDSIHN7qz0lXAYoGGAmsqZB/zm94FF5+XjtSCZiQcrA6o7BTmJYvqOgLnThpaQ5zayazbdg71Q1IVhIODQV0fKCgVDPgOdIItwG9XgmOg6yRQF760uHD9v1Ppa08oYBpORthsmtSVkQiRCWkF1cVm6PVpgF1fmu8dcjOvbgIZqTyvcZRLRLETFB0Wc/rc03+DMe+EZRYe10WnNYX2lkGFuHkWJz8lc3aXFwuamx6aydKGo11sPjK6zhUTnK4BiObwIG3zFPyEtN2aT7zyWL2hHh8NcV3jHzWaur4Q== 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 Mon, Aug 12, 2024 at 1:55=E2=80=AFAM David Rientjes wrote: > > On Sun, 11 Aug 2024, Pedro Falcato wrote: > > > > + if (kmem_cache_is_duplicate_name(name)) { > > > > + /* Duplicate names will confuse slabtop, et al */ > > > > + pr_warn("%s: name %s already exists as a cache\n", __= func__, name); > > > > > > > > > Shouldn't this be a full WARN_ON() instead of pr_warn()? I assume we= 'll > > > be interested in who is adding the cache when the name already exists= . > > > > panic_on_warn? :) > > > > Would get the problem fixed up pretty fast, no? :) > > > Personally I don't have anything against WARN_ON, but we've seen that > > panic_on_warn is a real thing on real systems, and DEBUG_VM is also > > set on real prod configs (like Fedora does/used to do). I've sent out > > one or two loose patches for problems I did find in my own testing > > around, but there may be many more (e.g some drivers may call > > kmem_cache_create repeatedly in some sort of callback, like 9pfs was > > doing when mounting; this is not greppable). And I'd guess grepping > > for cache names tends to be easy enough? > > > > Can we add a dump_stack() to make this way easier instead of hiding who i= s > creating the duplicate name? Bah, sorry for the delay. I'm fully in favour of adding a dump_stack(), but it seems like hand coding WARN_ON a bit. Oh well. If y'all agree, please squash this in (praying gmail doesn't mangle this diff, in any case it's a trivial change): diff --git a/mm/slab_common.c b/mm/slab_common.c index 1abe6a577d52..d183655e4b1b 100644 --- a/mm/slab_common.c +++ b/mm/slab_common.c @@ -111,6 +111,7 @@ static int kmem_cache_sanity_check(const char *name, unsigned int size) if (kmem_cache_is_duplicate_name(name)) { /* Duplicate names will confuse slabtop, et al */ pr_warn("%s: name %s already exists as a cache\n", __func__, name); + dump_stack_lvl(KERN_WARNING); } WARN_ON(strchr(name, ' ')); /* It confuses parsers */