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 48838E95A8E for ; Mon, 9 Oct 2023 09:36:18 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D79078D0037; Mon, 9 Oct 2023 05:36:17 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id D02DF8D0031; Mon, 9 Oct 2023 05:36:17 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id BA30B8D0037; Mon, 9 Oct 2023 05:36:17 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id A53798D0031 for ; Mon, 9 Oct 2023 05:36:17 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 72320401A0 for ; Mon, 9 Oct 2023 09:36:17 +0000 (UTC) X-FDA: 81325417194.08.E01B9E9 Received: from mail-qv1-f42.google.com (mail-qv1-f42.google.com [209.85.219.42]) by imf18.hostedemail.com (Postfix) with ESMTP id A6FFA1C0004 for ; Mon, 9 Oct 2023 09:36:15 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=VmGI4HNL; spf=pass (imf18.hostedemail.com: domain of glider@google.com designates 209.85.219.42 as permitted sender) smtp.mailfrom=glider@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1696844175; a=rsa-sha256; cv=none; b=5pBiqzEWTJjeYBvzZ6zYsludKpDd0yTVRTeNEHS0vqsiGuGT+akkXbtYyPTEqHgU6EQ6D2 GzMB21f1jb1NAusiAU/ILZA5njzoCmC0RelzgDR0CG93W0a4VuHuYNIJ4CwPmtcIroFWG4 i3K40Z4YOMpRu5osduPlt/8u9lRxNuI= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=VmGI4HNL; spf=pass (imf18.hostedemail.com: domain of glider@google.com designates 209.85.219.42 as permitted sender) smtp.mailfrom=glider@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1696844175; 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=NbPQn5PYDTYWmHehcflWH6rr2b2zYJNRYM1EffH3dP8=; b=n9zmjBCmY5M4Z0po7iuh5AQaIfjmfKfreGPdapnSWT2HrnaTat/bPTo6k15WIctLNZyYmH IzRAHDURypi+cSkLOWKoJwjhfmXbAX+I2m8rTNFT8ThG3emzseR4d8YapPS6Y49TnrNvat mO7DF7uNLWRPYiERLcLyM1f07KKeWh0= Received: by mail-qv1-f42.google.com with SMTP id 6a1803df08f44-668e4fd13a3so22741856d6.2 for ; Mon, 09 Oct 2023 02:36:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1696844175; x=1697448975; 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=NbPQn5PYDTYWmHehcflWH6rr2b2zYJNRYM1EffH3dP8=; b=VmGI4HNLFN1Vgf3H01VnLRF0AWHsvt6XgyZWMf3xsfh/hXPrQZMq3b3q+EjVctKJAn G0fJ7Qs/uxaJv+7qmW7pbLGmsNVJe8nWfW0e9xghdqPcmsSC87ZEXYVHMz0hzE4jHn/r WSdW3ryyMG5monk2GEkdOw4sPFkeBh2VCaJr3gBBqrK9avh4chg8wfZaUVpdvTGBfABq KiEVhgstuPW0E9B20vP6YIquSubhRM7mvZ4wLlo639iipi8KG8Y6FiTMMTei6u72gmFX x2RHroCPL18rONFrwCCbsMNRoNA3TTv7UbS/TBBgMcRK0TrQe4iE84Jy3+f2P37OPwut 4U0w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1696844175; x=1697448975; 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=NbPQn5PYDTYWmHehcflWH6rr2b2zYJNRYM1EffH3dP8=; b=GVkqeu1mRvUoExnYPWdwChmMjaYX2klvkWmPRmUqeZqQGv8+C30oLIiuUVO688Xsxa BKhSQwyw4pntVZuxflp4Vmj0MEV2pWe7EiUaZGPgNNHxQliNi7ARJrKtXe+pMmOeqRs6 PEuSJz826o8p6QWmGHlyjQRpK6GO6OHw5SDVjFcznEpgaP8iaMsdnJOMsUZvuCZJ8Lki CeTVziChi+oiOdd/x1uMkQtRlDy2QnKBFlaH7YgztNw/9omsi0pqpYkAc0JAZpXcSl2n XjVg6YMTjUmb3cVybBeu4BVdIfibskDFKb2aEx40L5VZU8u3gDpBaW1a27Gb7yY5S+JL +piQ== X-Gm-Message-State: AOJu0Yxyuq9o3xjZz2VUwUdUhcMVr2lEIbLccmRq6SX15IJ4jXgQYa0u G0LH0r42dN/wAZQ5u4DbXu+wuJtVAWzUyi5s4lFrwQ== X-Google-Smtp-Source: AGHT+IHl7GhqKVn2QASGrGlQPWIZs4lZeCDhb0GypUERFjZpZgQ73PUH9sqPw5uitx2hqKLaBTMDwKiIGXFneLYscbE= X-Received: by 2002:ad4:5d6a:0:b0:65a:f5e9:8ecf with SMTP id fn10-20020ad45d6a000000b0065af5e98ecfmr19993574qvb.60.1696844174006; Mon, 09 Oct 2023 02:36:14 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Alexander Potapenko Date: Mon, 9 Oct 2023 11:35:38 +0200 Message-ID: Subject: Re: [PATCH v2 07/19] lib/stackdepot: rework helpers for depot_alloc_stack To: andrey.konovalov@linux.dev Cc: Marco Elver , Andrey Konovalov , Dmitry Vyukov , Vlastimil Babka , kasan-dev@googlegroups.com, Evgenii Stepanov , Oscar Salvador , Andrew Morton , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Andrey Konovalov Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: A6FFA1C0004 X-Stat-Signature: nd35okg3sfbidn884m77b6gjqf9ukis7 X-Rspam-User: X-HE-Tag: 1696844175-699952 X-HE-Meta: U2FsdGVkX184Gtmfiv0/qa0cDvsMfAMVmkOUxlfjqIX+vz92zI2X95vEi7j2TrJ/7g5eIdihP8KlzAcGcFiXsey8SdDffhQKyaSpAEH10sSwo2kLU0KukyIgLKV0WbR1Wt8bhG4CWlYJ7FZJHT+nLA37yjW1HqRLyDsR+j/7EfA7KOtEjoCx9d7hctGvROC1P7qWyy707W8lLm0AD4Xt3gN6djFzoXnFP5aldSUUfN98uYt7lhi4ms+J/MbgMyplr9i01Y4UU/ET9AsdDAks5+LraQlc1n9yiiyf7FX8WwXe2+ztpSpdF1VIGOg5n9DUDx+xKc+oihFBNrSd3rxx4W3KUK8z3rnPLH9R1e9gPeuQZb493HLhrcmI4+2rjdcvsjdRSWonBIMUFbtHQfbtLVepeFBpQG7jerH/sspcjNHTa59kXSdb5vOwAHiVdiMpOji8Bm8LV6LmHI0Yn/VsFs0dsBHQqd6j4V9bV9TzE5vU6/TGmciHRnNp1m/6Stp75Nyk991Ew1D8j5NRqS0XmNUWFtmMhCsKWctvFJldLyEdj4TdlVVBnk5Z8I45eZTGkRp18hyheguoaqtG4WzF1s5pKopaGmA125+hVO98lqS19Iq2+Bc15rqSJagXKDQ+QwUEFAoxp8DbrRh7YOmzoledWGT3FrAZXSyuia6hqqknNLWGRii++3XmvrDjErO64M55lLScBpzqvRh/jc+AHRrXLtRP9gF9cUfQYtAx8ieiDSTDFU7ciWlI0IqfuD9oR5/yhHxnpaqcMkUgYkm31Zlp1/5qWe3VkopzHQgFMjZL5VL3+P3giEtkJTjAv8OHnza5YapL1wNkrO7QJd/BAwWsbNy5xvSc1F23mMHDOnguUdwUM3Hd3IUXetU98RO/Sy/GwywLzIUunfJO78yiNCPXMYiDzkWvHgzPmr45WrgRcZYsfWhNfzmNluuImHWLco0C0PD4EXbDN1T9sG7 871LN6go qqSIEUUTwitP5bgQhd8jO625JnJBb7kgAQcBEXbDcdgqsTv9btVih1ztqfIUiZwTShm7x72NqJO49K8Z3RJ8nIj3VjWlyKm+g1S77d2k+6zXtE6gTFkm3Lb1rFhiDMdFTa/jER+CrDPaO2RWRkdIW6E6U1MsWy34LQ0yU5SaB+6H+LAwE2OMJoNFl9IpjaviGXycsg6NPGdt7oVzIMU4X+8H6Y8DKaE0txUUnxYY3cxubeQ3VZh6/pZ4bXsohj69wzNnWqwr0aaM9xAJX1B+KWdL3DsWvZjpR2/INsOk/72K/hGis2YpcTtGyDzFsrBV+HDQK8qlMbH+4EiQ= X-Bogosity: Ham, tests=bogofilter, spamicity=0.001247, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Mon, Oct 9, 2023 at 10:59=E2=80=AFAM Alexander Potapenko wrote: > > On Wed, Sep 13, 2023 at 7:15=E2=80=AFPM wrot= e: > > > > From: Andrey Konovalov > > > > Split code in depot_alloc_stack and depot_init_pool into 3 functions: > > > > 1. depot_keep_next_pool that keeps preallocated memory for the next poo= l > > if required. > > > > 2. depot_update_pools that moves on to the next pool if there's no spac= e > > left in the current pool, uses preallocated memory for the new curre= nt > > pool if required, and calls depot_keep_next_pool otherwise. > > > > 3. depot_alloc_stack that calls depot_update_pools and then allocates > > a stack record as before. > > > > This makes it somewhat easier to follow the logic of depot_alloc_stack > > and also serves as a preparation for implementing the eviction of stack > > records from the stack depot. > > > > Signed-off-by: Andrey Konovalov > Reviewed-by: Alexander Potapenko > > > > +static void depot_keep_next_pool(void **prealloc) > > { > > /* > > - * If the next pool is already initialized or the maximum numbe= r of > > + * If the next pool is already saved or the maximum number of > > * pools is reached, do not use the preallocated memory. > > */ > > if (!next_pool_required) > It's not mentioned at the top of the file that next_pool_required is > protected by pool_lock, but it is, correct? > Can you please update the comment to reflect that? You're adding lockdep annotations in patch 11, which are pretty self-descriptive. Feel free to ignore my comment above.