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 600D3CDB474 for ; Fri, 20 Oct 2023 03:55:19 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E5C768D01B9; Thu, 19 Oct 2023 23:55:18 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id DBE7F8D0003; Thu, 19 Oct 2023 23:55:18 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C5AA58D01B9; Thu, 19 Oct 2023 23:55:18 -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 AE7FB8D0003 for ; Thu, 19 Oct 2023 23:55:18 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 72F06140768 for ; Fri, 20 Oct 2023 03:55:18 +0000 (UTC) X-FDA: 81364474716.08.349F030 Received: from mail-oa1-f41.google.com (mail-oa1-f41.google.com [209.85.160.41]) by imf01.hostedemail.com (Postfix) with ESMTP id B2D4740014 for ; Fri, 20 Oct 2023 03:55:16 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=none; spf=pass (imf01.hostedemail.com: domain of dennisszhou@gmail.com designates 209.85.160.41 as permitted sender) smtp.mailfrom=dennisszhou@gmail.com; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=kernel.org (policy=none) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1697774116; 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; bh=GL0rTnxX/JHJhmO0PubTkBEvJ+H5orYuhHbybqoZ3rQ=; b=A0sYtQdgWvbhwIEz9/AD9WPMu67AiiqN1iSd4KP5pbe8iCSCOyrp2FdPF9X6PP5L0iWOI3 MhJdzalXDGCNUUnUaAtvdeMHSiVhykSCKPz1zGwKPsPGPSwNVLhQv5he1sfOTtfIzeVDjZ N35gwE9P7sqW8U448MXrafYRIlYy+h4= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1697774116; a=rsa-sha256; cv=none; b=VQ+OAfdQhT6Ml2ymQNv/AxnfksiCGjPHccVlT3Ib0P3USxxxV8OJBZTp2auRtBaXWkvj3N ouFyMkZsj4liJ38IxEj+VUxj+QD/xmLAZnLiudvyj6oIO2KXo8dw/2b3dDl2A9LDuyG9nL KijKaZQaPFbYstgdPQk3IaAteIP9f00= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=none; spf=pass (imf01.hostedemail.com: domain of dennisszhou@gmail.com designates 209.85.160.41 as permitted sender) smtp.mailfrom=dennisszhou@gmail.com; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=kernel.org (policy=none) Received: by mail-oa1-f41.google.com with SMTP id 586e51a60fabf-1ead2e6fab7so300886fac.0 for ; Thu, 19 Oct 2023 20:55:16 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697774116; x=1698378916; 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=GL0rTnxX/JHJhmO0PubTkBEvJ+H5orYuhHbybqoZ3rQ=; b=G/ssxWffFcVDuIHW6peANhM0QOkye+umNWMRF82Z73i/dYqlpZ18zd6g5cil9f4Ma8 81mM4sKLLqrPpPc/gGBN+Xs2qGcbr2f1pFq4icsMrCUjSAcdPjbGWAISi0nqLOePjCkq C6Cio9AR+M1oWT4iytu2M3UpOyw4jKWTFgabkDrFr/mRiuzqfa0ILkS9gWNRchFN3wqM GUqrCmigLVA2IzOz5uAIOeocpPjUvXmUEz6nUmMxq/H59kHMxxBWcklke6HkatHkhUfC 6wmdNCAL8PnRY8MnTpH6T1dOgrisJH9ZDP4RyKzIbr/OValAl3oTBuCmVau93kexAYV9 V7oQ== X-Gm-Message-State: AOJu0Yz/9is2KESJ5S0B6HvU1tInp4GTKZWVdEpa0Uuy8yVpg07sRHc2 itiF7SDBngvoeFh1gIG9h6Y= X-Google-Smtp-Source: AGHT+IEGxU/dDFQbKVbiOUNM/3o4Z54rKfODbJ/7X7xVhTHixvIFjGWQxnl7k/46IVdP7NB2ebgzJw== X-Received: by 2002:a05:6358:7e07:b0:166:f338:78e3 with SMTP id o7-20020a0563587e0700b00166f33878e3mr837485rwm.21.1697774115018; Thu, 19 Oct 2023 20:55:15 -0700 (PDT) Received: from snowbird ([136.25.84.107]) by smtp.gmail.com with ESMTPSA id h26-20020aa796da000000b0069343e474bcsm523590pfq.104.2023.10.19.20.55.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Oct 2023 20:55:14 -0700 (PDT) Date: Thu, 19 Oct 2023 20:55:11 -0700 From: Dennis Zhou To: Hou Tao Cc: bpf@vger.kernel.org, linux-mm@kvack.org, Martin KaFai Lau , Alexei Starovoitov , Andrii Nakryiko , Song Liu , Hao Luo , Yonghong Song , Daniel Borkmann , KP Singh , Stanislav Fomichev , Jiri Olsa , John Fastabend , houtao1@huawei.com, Tejun Heo , Christoph Lameter , Andrew Morton Subject: Re: [PATCH bpf-next v2 1/7] mm/percpu.c: don't acquire pcpu_lock for pcpu_chunk_addr_search() Message-ID: References: <20231018113343.2446300-1-houtao@huaweicloud.com> <20231018113343.2446300-2-houtao@huaweicloud.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20231018113343.2446300-2-houtao@huaweicloud.com> X-Rspamd-Queue-Id: B2D4740014 X-Rspam-User: X-Stat-Signature: urqajeamtc66p8gyeoohwcgjrmbt8cib X-Rspamd-Server: rspam03 X-HE-Tag: 1697774116-8553 X-HE-Meta: U2FsdGVkX18oP6inoLqX5OASN7PepmVbYFi2acPf4XrZUgo9QjnP2hmIsmV0Ui87C15j8H1u9bqbGNjzVBbaid0b2XrN6P53xxL/YAMA3G1tUE7DTu1U21nijYtm1FrJT9wTcZkjJeFCDkvshKYtFrrTpj7Z38VgUYqui0zWjA0pGXKPR4HaFtLcoT558KmrYmDeodC24olkimbuh/hUgXM49kvwQcno287tRQ++Yi12BKsoZBCiY7WCrpF0UzXkKaU2YwUQ2Gk9ImOvWe00n9pMlZTH/ndpT25X5MnoyShnwFoaNYbfVbHTDbmPRiaiw1blLarGY9MFMs6OXQ6qQQsWpsxYCDG9N977lXzb0Kz1+lNYgL943nGsXqdgwhtGEuxZjrW7bMyanb0A1K89lbmH01vsj4SIxjVxTNDffaJt7ictw5LpdtWCQGwLoKoVjvmIA0cj/WIfjboyQxTBadaLTxx+xLgjiDRLQ5hmzaBADvTww7F16OfxR6d0jU1UbzsCG3hMEoRE2H/lIK1NTsRxdsRBkS058R5uunt2xS8T7y9byBpwogbSsvrbAoxhcDPY2U4SyNmHYGIjrySeCE/PS2Lgkioms7y+2xwNvwBmLKrL568cpueJgaAj8nJqTVGoHDuhmN/jgh1K5OyyzI/yOlEnOjhwarFRYAuO2EL+/k+9yiROkOagHJv7Ga9uoDAjkkv8CGA4JgoKiBMl0aVRT+G2I5OtXS2ZRQEZfTo7NkjKdjFyzDy4cDr5zYazasLByac1r41jEwNcD8c6c9goVS3TMxdb4cXCw2N1jFe9w4VrjiKfh8HeuufSh6mjJ4JVCrqylaYNMtx6YGRy5x/hnWYiXS8sCZAQZC4WwlCA5GsTrKAAwLwJ3bUFRx9w1TAbic+Vys6o3fiJvtFhCKMGhhzkcoFXJ1eQBXT0BUlzp08fYCB6TGGz4t4y+OtfxYgEl8H9HTSWpOEw+EY AY4l3NnT kwdQ1xTBXAAIjC4DZBAP2DO1piplhiyCYLlIbeHLOgo/90o0ulsW0nYHGAHo0F/R5eTd5ENLw9p/QNLqsY8emBCqOp31BzG0wepKq/pr2JACKSNaZ4zrwbvdxyExj1yPZNMlOC1yMGfJosVcQiu8B2KFauEYCN2PqJKFBDbz4FjSlMXxvEt45w6b11+cHkohLt1xiFn9y1DGdvhtpmGscrFEFp8prDE2p0ywP93Iz6IcBc5fKfhGZLxm4i2Nz7O051JHElJGHQL/2t0SlpNAmPq4wwC+dCTTDX5BgKwfmYS1Qrd6ArChL6a7HRFoh8/XwuZIQ4gwrYu98zf9l+dskxJ6VqJrf32Cz4SDiYnsUeH3/IdPE9GxU4dP4/uutFO6KTgst1HZLvrEUY3VQFQMnzGmzeGIGUEHWU4+VOCK9oLnn2F2a83jM3e26TwIHHU2jTPe2OkyYelJy1zAdz38DGn0p+xJ7dWYizgJd4/0b7xqjK+5l/WAMcuhl3TNs1losQAL4LQ5x6o8xaTONRx/BF8ONqFwYi34FPa76tifin36UhnE0+Aij9PX9Pxh5MeT6V2sh 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: On Wed, Oct 18, 2023 at 07:33:37PM +0800, Hou Tao wrote: > From: Hou Tao > > There is no need to acquire pcpu_lock for pcpu_chunk_addr_search(): > 1) both pcpu_first_chunk & pcpu_reserved_chunk must have been > initialized before the invocation of free_percpu(). > 2) The dynamically-created chunk must be valid before the per-cpu > pointers allocated from it are freed. > > So acquire pcpu_lock() after the invocation of pcpu_chunk_addr_search(). > > Signed-off-by: Hou Tao > --- > mm/percpu.c | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/mm/percpu.c b/mm/percpu.c > index 7b40b3963f10..76b9c5e63c56 100644 > --- a/mm/percpu.c > +++ b/mm/percpu.c > @@ -2267,12 +2267,10 @@ void free_percpu(void __percpu *ptr) > kmemleak_free_percpu(ptr); > > addr = __pcpu_ptr_to_addr(ptr); > - > - spin_lock_irqsave(&pcpu_lock, flags); > - > chunk = pcpu_chunk_addr_search(addr); > off = addr - chunk->base_addr; > > + spin_lock_irqsave(&pcpu_lock, flags); > size = pcpu_free_area(chunk, off); > > pcpu_memcg_free_hook(chunk, off, size); > -- > 2.29.2 > Acked-by: Dennis Zhou Thanks, Dennis