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 EE585C61D9B for ; Wed, 22 Nov 2023 17:21:08 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8ACBC6B050D; Wed, 22 Nov 2023 12:21:08 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 85CD56B050F; Wed, 22 Nov 2023 12:21:08 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7253E6B0511; Wed, 22 Nov 2023 12:21:08 -0500 (EST) 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 5F5526B050D for ; Wed, 22 Nov 2023 12:21:08 -0500 (EST) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 8980CC11C9 for ; Wed, 22 Nov 2023 17:21:07 +0000 (UTC) X-FDA: 81486255774.19.BE42212 Received: from mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) by imf02.hostedemail.com (Postfix) with ESMTP id 94C0C80017 for ; Wed, 22 Nov 2023 17:21:05 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=I8g7FUJs; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf02.hostedemail.com: domain of elver@google.com designates 209.85.128.51 as permitted sender) smtp.mailfrom=elver@google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1700673665; 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=hVowPfOdM8wVDD7Ux+I97nRKLe3FJvmMPxWZObEYXX4=; b=6zHh9PSYn9uhIbotRzTpIMBy4tLa+IQUDajfhsEm79NjX+99dNPcFq5W9TR2b6IESf8xLk cgolvemfgHXtA9wiGTw9DWo8sx4l1mDwpomV5HFrcqeFnWSHyL9nygIzc0vH38JZ831jOe 0MxaUbZ97pIlm+zOaTtDru8/qkFZQx4= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=I8g7FUJs; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf02.hostedemail.com: domain of elver@google.com designates 209.85.128.51 as permitted sender) smtp.mailfrom=elver@google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1700673665; a=rsa-sha256; cv=none; b=qTxg9Po19CGu4ldseerRMSqtAvH1d1zovWA0boLlkuTnbtIOEvOnRoQz9EbNnvmqXi+P6q pRxAO5pHXQerL31YCoVhrboRiCWw+1G4/7mA2TVkQHzekFGdkee0x7t0n4awY4MD0PmYr0 /PrRJTMpmLciUnpsdTmKESTS9MhpsPY= Received: by mail-wm1-f51.google.com with SMTP id 5b1f17b1804b1-4083f613275so35896845e9.2 for ; Wed, 22 Nov 2023 09:21:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1700673664; x=1701278464; darn=kvack.org; h=user-agent: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=hVowPfOdM8wVDD7Ux+I97nRKLe3FJvmMPxWZObEYXX4=; b=I8g7FUJsctnS72qtshgzsPuMy7lbrErPe25exGpeo3dFolueUuBZp90uSd/FQnVDIh tYf4WCbtdsGczpaQY0CbJqoIRwLaoJTN9qAoRyETetYWSWU3zAJWkN9ZQ5gORZqJuC3l WdbpYMJh57GcKHmn9GPZwJjDio+2KMwojvgPUXBjLhvp5mRur8smfXo0+sDp9yST6TPp lSgVlbLoh6sueIaRiS/u2GzEs38YPMobsuohIcVo/X7NvtEc4gpi9Bo2flXnOwg+wAEV Qxe9ZSmYScqDM8IomIgrUrugIAnGQNMxA1rgIcsaoKF3TgFWs0kbxmjtm5NkBWaAz8nc 6Apg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700673664; x=1701278464; h=user-agent: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=hVowPfOdM8wVDD7Ux+I97nRKLe3FJvmMPxWZObEYXX4=; b=fnm5HtTMzGszOzgVKAPPtvPWwz0LkzX2DwANhMvtMwAKU/JMjd4OJYi8VpsJz1riwN kqeUu9nlIH18DiLA2tE1BwcoLtKEAuT8R9H+CY5O49ZpKvldGpb8jSQ5ow2pXIQAHFiB T3XXjew67rztitFWSoh+9MyPY85Un20P7uJUUEXraCrG8P+j7S5E9bDJGG3rThjFTHPj cPoMJ4CZz9M28cPDByw+OhqbpSvQvC0xbQbWbF2nrcYQRHjbairXZ0oIatxxC9d8+thc Um5xXgAiGi5UWch1HWCVttckBRhQ9LJMg8vE3N/X/pODaH9zGxX9l79Q96OCtpN2MokU frvQ== X-Gm-Message-State: AOJu0YwvQQD4epPWF2gG+/5tfgd1ZRvSrcm24j0JuYWaKOwp+MTUdjxi lc6GsyT1NpOS4+S5kgODH/J7Ug== X-Google-Smtp-Source: AGHT+IHpvtyKjS/XNlh9N3GaVe0iUdniYNK9cEm7ZBSprV/wpsShgJIE5AGFN99iI+PQFty46k4Kmw== X-Received: by 2002:a05:6000:128e:b0:332:ce86:cc35 with SMTP id f14-20020a056000128e00b00332ce86cc35mr1828909wrx.71.1700673663968; Wed, 22 Nov 2023 09:21:03 -0800 (PST) Received: from elver.google.com ([2a00:79e0:9c:201:1dcf:36df:c2d9:af51]) by smtp.gmail.com with ESMTPSA id d19-20020adf9b93000000b003316eb9db40sm15549737wrc.51.2023.11.22.09.21.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 22 Nov 2023 09:21:03 -0800 (PST) Date: Wed, 22 Nov 2023 18:20:57 +0100 From: Marco Elver To: andrey.konovalov@linux.dev Cc: Alexander Potapenko , Andrey Konovalov , Dmitry Vyukov , Andrey Ryabinin , kasan-dev@googlegroups.com, Evgenii Stepanov , Andrew Morton , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Andrey Konovalov Subject: Re: [PATCH RFC 14/20] mempool: introduce mempool_use_prealloc_only Message-ID: References: <9752c5fc4763e7533a44a7c9368f056c47b52f34.1699297309.git.andreyknvl@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <9752c5fc4763e7533a44a7c9368f056c47b52f34.1699297309.git.andreyknvl@google.com> User-Agent: Mutt/2.2.12 (2023-09-09) X-Rspamd-Queue-Id: 94C0C80017 X-Rspam-User: X-Rspamd-Server: rspam04 X-Stat-Signature: tzcpcrtfsr9pay6wcgjjw4c99gerrjqg X-HE-Tag: 1700673665-203703 X-HE-Meta: U2FsdGVkX1+pVpNcOzr/j1hWVUJNrVGR/gABbqvK0/CttdzW3PSdJayVukSORuHUO7wrZPbuQASIRcQdrDBai317i/i5Xrt2rd9iqOARq/l2jKbZxP04V3ZR5avgq1Tg63YaA54PKDvZtudpMCqMWOvmRbeyTRrG9IDXm77Y9oC4Xm2Aoqzyb4caJj0OlgfPBTOfxh6rCUDj9z25PxVt1+S3qvbMG6yHVQDycny8e1TH9lf8baxRYIbhg5R1miFjoG64W+IRCMyDGdVwstTIup1M+6p8qKNsAh7GDalsbevUF8BEhVHBmm6n6CSmjMaYBXbUfwF7D6WLkGd1qsfN5LRv+5/Y7I23+tl265mMa8twxpFHcvkmqKUkiHwCGa/DOEkWoobyTLGAl1VDa+iYnV2thH18npkA7wnjBwKycvMSrOdMTvDqqXib2n8qmfZ4mYS01zEcCukiagumeTPoG3pQ9o32qs4Si8101lj+k55d3/RrqHm2Mkrty/BZZbVw+6yANsM1XDxgF+dTE+rXaLgyaQ1pq8B01UEoPwHpqsUR4ahpgxZETLVXEnb4XhNdiFaVxC0x9FLF9LmpqWTLmFJ/TXMwjzBRB27Ocb5c2BhgdSgs4HOBkxttyQogG7vYfaRj3Gd+PXaYxx1BoAXbJRxpoAYTZr4jJdPHYjPHxe/2+VvqSMHku3+0I2mAQ6jilW2w0NUXr87Xk4F4Cov/k+Azuf92RJlrv3yzCA/2t0B0JueSQJQp7p+I41BcZMr7gv/ZcVvbsIJoRogkpOCpyyIL96vGc/M2Un9hQU1tCS72HlCUIzmgGWwxb7lfhL1fXh4oJrVwACY9ksFw3z+ww3luCmWsiS6TMiCFxEh8ZS37mkgPfljLny8coO0WBxS2IXUS5/YiVcNdqM+7NuZ5S/+xkbpZqA1JWBH7MleN1G6moxM38up0Rfz7ehRI3/kyKhbEhUE8sE0W+9B39QL vb0woKut +zuTXRBMvNG4ysveKhwb56QE+ij08c2WBIuelEky/5uSR2eLFBAnihra41qqjuQsJleLzStOny3YKcZNqvzwrvtkYnAcOlpe9ecK/RqiOb0nJO72sOC6mEqLWXavgZk2hQ8Sm2iVxx8h0aOJHrDinJxcDZUU9EwCuE1+7/lswHE/d91pdA5HGEuSpQtUihss3u+SF+qnKZPSwJgaZ2aN4h9TO+geysLx2Uo3n0NEsb6/b27TgchPxrDcg0m6lr57SRoZ7hBqpk1gv/73wWBLV+DCVTqX5PAWnApLoJux4UKBDs2lut8ulVCy4MZcSS/HQFeecrth4iA6yD/EphcL3InNmft/qd17i9QIGbZLNZ9oCl67aGUPGJQwdpLZOkO1oDgH/lhQdoBo6l48QuNpzCdZmgRGtHuCbsqtBBV55UyVKsdx1Qk1vo0OmwvDiZeiX9hhTmEESmkZfF7suHFP2YJjS8uJ0MqZOyG8WMA4rY53iXwRqyAiRaZMSFdclBF7kYHdi 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, Nov 06, 2023 at 09:10PM +0100, andrey.konovalov@linux.dev wrote: > From: Andrey Konovalov > > Introduce a new mempool_use_prealloc_only API that tells the mempool to > only use the elements preallocated during the mempool's creation and to > not attempt allocating new ones. > > This API is required to test the KASAN poisoning/unpoisoning functinality > in KASAN tests, but it might be also useful on its own. > > Signed-off-by: Andrey Konovalov > --- > include/linux/mempool.h | 2 ++ > mm/mempool.c | 27 ++++++++++++++++++++++++--- > 2 files changed, 26 insertions(+), 3 deletions(-) > > diff --git a/include/linux/mempool.h b/include/linux/mempool.h > index 4aae6c06c5f2..822adf1e7567 100644 > --- a/include/linux/mempool.h > +++ b/include/linux/mempool.h > @@ -18,6 +18,7 @@ typedef struct mempool_s { > int min_nr; /* nr of elements at *elements */ > int curr_nr; /* Current nr of elements at *elements */ > void **elements; > + bool use_prealloc_only; /* Use only preallocated elements */ This increases the struct size from 56 to 64 bytes (64 bit arch). mempool_t is embedded in lots of other larger structs, and this may result in some unwanted bloat. Is there a way to achieve the same thing without adding a new bool to the mempool struct? It seems a little excessive only for the purpose of the tests.