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 5942DCE7AAE for ; Fri, 6 Sep 2024 03:45:31 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EA7C16B008C; Thu, 5 Sep 2024 23:45:30 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E31476B0092; Thu, 5 Sep 2024 23:45:30 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CD17C6B0093; Thu, 5 Sep 2024 23:45:30 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id AA7876B008C for ; Thu, 5 Sep 2024 23:45:30 -0400 (EDT) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 30C5F40DBD for ; Fri, 6 Sep 2024 03:45:30 +0000 (UTC) X-FDA: 82532923620.11.0E98C7C Received: from mail-pl1-f170.google.com (mail-pl1-f170.google.com [209.85.214.170]) by imf26.hostedemail.com (Postfix) with ESMTP id 46799140008 for ; Fri, 6 Sep 2024 03:45:28 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=SodtBt8l; spf=pass (imf26.hostedemail.com: domain of senozhatsky@chromium.org designates 209.85.214.170 as permitted sender) smtp.mailfrom=senozhatsky@chromium.org; dmarc=pass (policy=none) header.from=chromium.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1725594303; 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=BRiE3j2lWWDNonCtzpfytk7Skh2+MjpLY1r3ytLzBfM=; b=j+dRfKbrIDTgAKGzYlv9xukWsVZHYqGqUpqk6ckf/Fp1cw25I/gkOe73oks1vfk1TC0Wep Rxy16LA6j0JIB+QRFVXTSnumXydhc9QD3C2z40+1qElr/tzSJcxHcFSIQRh5XDMfG4Jn0V erEnbuqPQqfW1XTD3p40c13c0ZwHxbE= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=SodtBt8l; spf=pass (imf26.hostedemail.com: domain of senozhatsky@chromium.org designates 209.85.214.170 as permitted sender) smtp.mailfrom=senozhatsky@chromium.org; dmarc=pass (policy=none) header.from=chromium.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1725594303; a=rsa-sha256; cv=none; b=oMs1bArLhiFnzEQwSZZQc+6cjhkdrF4cna4vgw5y6Jt2JOqzoTjqUYp2U2IcO5/A2BKz6j w3L3xC5zVpk+dQM0UfFvvSdJeEGUfCc3pCjXg6JAINRUDEBgTsiknw+Wn8DweF6c0qpry3 PlgGibQL82hYkwCXV3v/sMhbiuZ6EfU= Received: by mail-pl1-f170.google.com with SMTP id d9443c01a7336-2057c6c57b5so8738015ad.1 for ; Thu, 05 Sep 2024 20:45:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1725594327; x=1726199127; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=BRiE3j2lWWDNonCtzpfytk7Skh2+MjpLY1r3ytLzBfM=; b=SodtBt8lHuMNix3ZIlsqrODL2PUOKhbzQKu9hkDSqH3csjiDyp8fFlbs+YXcrs+8Hb mcq6JyM3x0JxWqbFx98HRhuWDtfJIyAmeBMDg556u0sDDaf9sQLrIgUY7Ljc1s28kVo6 v75/egBv51thNfJD+rb2TCQ2kGZgdlTAkb1zc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725594327; x=1726199127; 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=BRiE3j2lWWDNonCtzpfytk7Skh2+MjpLY1r3ytLzBfM=; b=WakaEJrycEKwl5mgdOS+X/WGRwoo6gMv/j4J3hAnecvmkq43KvmaQQLDImwMR1abAA l/eKNuvlmbhPdIsRKIu3DVa36+FoHS7Aasl+WFEO85c4ryU0mnFKQ29yDLQ45sYQ+C6q LmcDCAVgqsLyzK+lzPQ1OTaSJ+xK+7iu9Uqf5EzlPrNW1PA37B/8BDGGeNDYggau3enM jPXGGemv2nRidN+4MsVIXQJ93r4YyylARYx/yC7JA4++KT/fF76nXQOyEygTHT/hWV14 z7Q7+oZAndKLute3YFxLliYBIEQ6JWbooPwqIlx/GC6sqlDs7Yo0NPkSrVzp8MBHR+Q8 vCEw== X-Forwarded-Encrypted: i=1; AJvYcCXkgLdsX+0MtWYZEbneeGlTilhSSuR6tSXYMb7UrViNj9BrtrFtYDmYZxlylnHanK/2LXWVmN5pGg==@kvack.org X-Gm-Message-State: AOJu0YwMyas9uyu6SN/ABxgzJ6tc7sDpL52zQNogEKzF7eD6RT906bPD iSZHidG2dnPSG8wcEdv3n6C7+Mh3gsCoWSOFk/ShzbK/ES+1QvUuG+CXaPa3DA== X-Google-Smtp-Source: AGHT+IG2i7gtVLgmcNdWYpECf0cB9SD4IVkgPpMxdP0UQkDOvw6MrofJ2n4xAc+lfE3VJ7546HG7FQ== X-Received: by 2002:a17:902:c94e:b0:205:59b7:69c2 with SMTP id d9443c01a7336-206ee93964dmr25225015ad.7.1725594326978; Thu, 05 Sep 2024 20:45:26 -0700 (PDT) Received: from google.com ([2401:fa00:8f:203:734f:d85:4585:b52d]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-206ae9131f2sm35553765ad.18.2024.09.05.20.45.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 05 Sep 2024 20:45:26 -0700 (PDT) Date: Fri, 6 Sep 2024 12:45:22 +0900 From: Sergey Senozhatsky To: Andrew Morton Cc: Sergey Senozhatsky , Minchan Kim , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] mm: use unique zsmalloc caches names Message-ID: <20240906034522.GA2413563@google.com> References: <20240905064736.2250735-1-senozhatsky@chromium.org> <20240905145209.641c8f127ba353832a1be778@linux-foundation.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240905145209.641c8f127ba353832a1be778@linux-foundation.org> X-Rspam-User: X-Stat-Signature: n7sq9gpptzozt4wmkjhkejbprig75y35 X-Rspamd-Queue-Id: 46799140008 X-Rspamd-Server: rspam11 X-HE-Tag: 1725594328-677562 X-HE-Meta: U2FsdGVkX18/D3PA80KaP832UmL8FZbbT9pIuC8UnSwO3URGY0sbg2Wds9WqKYqE9OEg3ZP+pVDbSamhjKTab/FrcAMA2oxWLdn4MH58K42iFodXUpIME40nXejKhcxBXaOUt30tsRgy2Lfe1e0WxJchCgnrZuOrnw+xC+YB3JHskA8pKi8cyegq21RIZsyux8lepTFOIIt9mvMRrAy0ZPEzN8OxszuQEj/YCTYf73Mxll9f9LnLw2+9lnhIYL7BD5LwcNOP4B50Kl+PRVNWmrdUaARNX5KoO+sR71P9sNZVJJlY5hwsomNBiCMBaNOPitZWUD3VPSOiC+ABWL9gAXG3eB+bs8VAc/p4tBnGf/Z0QQ9eQZZW8yDfGYgD71ARnHFQPPYcs9funX72zeOnyvN1h4CfZyvFdum5dEuaIg+PvULAXh/UlfvpDR29kdeRDcF65TZ18ON8n1Qq6LvISAkUe+NiSopNEIWAzaS8400YsG0nzUVcsyfh+0gJHS/Q0crLgHuDIsiEInh/zMHdSej0WlI6J6IubjQ34w6A7Ky9AFUk4RlKUgpameMNZMrDrWCBclhgYdm5fRbBTBWoCZprSeoXnuV0Jf7D2HXkfKLJ6K31pFFl1Wwm/XxLF0xO+/FsMVvIFCknum2LHVDwX5ZZ36WKbQe+G1bUWD3Tx7kokpMxUmH0z4RaA2av7euw93JmrsraIO50K2qpcQxRCitAukxwj5vexLCp696H8wS9irZb9oYniXtBd8vMmeyG1KaTVdX8SV8JgVswptMQjnexo+jtbMWDAtOOoCBuOpKsOtPMi+OUtX4Eex34RS+BYMmOmqXR5QD5Xeq39pMVq19mzyE8x9jcZPexMr2fNsEvhvlBJu5knkXvZNIgYJouk2BW/IbMcTM3nO1+7IjVHEwAqNKMPzBirMWMVttROFl+DytqZShrerrTFONC1g4nQfM8InRser/FbV+Lyzt MCQJiz5Y /RoxyQYhYt7fp2ji+KksPQ5BsEVgKKSQh/m+6G2AbdCAfdBdvQFUwDeyauE5kM7sFf0CaGmALW82cUXcpVDewpGNm4xL6c9dJQCxHjSvLhU7bsvI3SoDPKJ/bljvxPRLQ7/hCvJImIL1tBqP8DM4062B5C7Y2ngQvbtGsycvMtSbsyC8nt57Qj0JcN0wmwvgHQFad9SpQK2NIKVeYb07u2rpErd7y/ffzS/QBi7lL+OYYg0uoOHD/XIDYgWnRY7qlSSQzHeTr2my+s/tj/pfoDAojY5R9JNZ6Ak9Sm6O/oukigayayLg1OtBIqm0zVwFqEoR1FGTsheJsBEfqjG7HhXmJCoRyAYZVJhkiPBhlDbQqPyk= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000018, 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 (24/09/05 14:52), Andrew Morton wrote: > > Each zsmalloc pool maintains several named kmem-caches for > > zs_handle-s and zspage-s. On a system with multiple zsmalloc > > pools and CONFIG_DEBUG_VM this triggers kmem_cache_sanity_check(): > > > > kmem_cache of name 'zspage' already exists > > WARNING: at mm/slab_common.c:108 do_kmem_cache_create_usercopy+0xb5/0x310 > > ... > > > > kmem_cache of name 'zs_handle' already exists > > WARNING: at mm/slab_common.c:108 do_kmem_cache_create_usercopy+0xb5/0x310 > > ... > > This is old code. Did something recently change to trigger this warning? The kmem_cache WARN_ON() seems to be a new thing 4c39529663b93 and I think for the past week or so my test box has been running with DEBUG_VM disabled. [..] > > static int create_cache(struct zs_pool *pool) > > { > > - pool->handle_cachep = kmem_cache_create("zs_handle", ZS_HANDLE_SIZE, > > - 0, 0, NULL); > > + char name[32]; > > + > > + snprintf(name, sizeof(name), "zs_handle-%s", pool->name); > > Always scary seeing code making such assumptions about it arguments in > this fashion. Can we use kasprintf() and sleep well at night? Sure, I'll switch to kasprintf() "pillow" in v2. [..] > > if (!pool->zspage_cachep) { > > kmem_cache_destroy(pool->handle_cachep); > > pool->handle_cachep = NULL; > > I guess we want to backport this into earlier kernels? If so, what > would be a suitable Fixes:? So this doesn't affect zsmalloc, it's only some user-space tools that can get confused. The code in question has been around since forever. The first kmem-cache has been introduced by 2e40e163a25a in 2015. I'll add Fixes: 2e40e163a25af3 in v2, but I'm not certain if we are in urge to backport anything.