Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp3226297rwd; Mon, 29 May 2023 07:26:44 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ6LSWMosLxpsi0kmZyZPKitfj2CuV9m5aTqJAc5RZMkASptf03B9X21XwhCsx9hQITJWliD X-Received: by 2002:a17:902:6bc7:b0:1b0:1c30:ea25 with SMTP id m7-20020a1709026bc700b001b01c30ea25mr9254157plt.66.1685370404227; Mon, 29 May 2023 07:26:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1685370404; cv=none; d=google.com; s=arc-20160816; b=YAnWy710rbbwhEQlLAH/db3JdQjEfmPAbJoAhSnsl383a+IcL4LnQ1f02TdInZCYVp Jw1/p2ca+ifnavyH9ne8OAWaW0qZUZRC/mvzzerGtRg8J3zmS1VRAYy8QMxzxF5Q9LHL B5YBGKaW58XzSQJegT0s7wZFEgJH+6DZeBlD3h4kmE+8oJlCQkk/pmzyQ661qgrhZYO2 AnMkGTOmJ3pUo/d1KJ72K9a2ZHGrtulY2fKQP17v1p4RVVbYL1jCd4LEbaYF41UtyRJX h7pceRGvsYf16GaLTU3cplLNMmkZlfzzGNnDueuuFKAYF1JXnsG9bbDvgzT9aJe9UIxD eCbw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=8n/gSgUfVLp+2xUxKUXJObyidN3fOaenRgCYrh0plbg=; b=Uh7ldIAFnyvlNJ6Xf2sLwhSFVyclLKAMwEvJ/kY4liHKOFOo3URgUpAWhf/PRJY1AP hO96H+Zv9Xzuy9p2CIsrABIXoAijOwHsGylfVbWU6cjb5ReGaoM8fiwWMfLB9zKEX9y2 6lpcz7koxdMecDh2dvijXIyZUi6cnuNegfGA2s8Kj6arxcROcyOv/5r0NlKKN5KqFGpA RkmO3dE1A2BwZIGyBHVAx7wemjul+uyds3+eb3YwCrtME3utTsdVOJe1GmVi5Vt/I3gM NvHjCtSezb8vS5XngBrdVz1d2HfPzKNAVd/W/JnDfnKNvn1vcHArguEW0f4zwjJGV+P9 fkHg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=casper.20170209 header.b=lDre3Kyc; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id z15-20020a170903018f00b001b03a1a3169si2784809plg.257.2023.05.29.07.26.30; Mon, 29 May 2023 07:26:44 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=casper.20170209 header.b=lDre3Kyc; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230218AbjE2OD2 (ORCPT + 99 others); Mon, 29 May 2023 10:03:28 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45420 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230107AbjE2ODX (ORCPT ); Mon, 29 May 2023 10:03:23 -0400 Received: from casper.infradead.org (casper.infradead.org [IPv6:2001:8b0:10b:1236::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8258EC9; Mon, 29 May 2023 07:02:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=8n/gSgUfVLp+2xUxKUXJObyidN3fOaenRgCYrh0plbg=; b=lDre3KycVopHJgQtSVi6Ft0h2+ /6KcXeh5DDgTYRWUam42o5WNWijcaqCZOd3dx2HAurqm8z1fldvnXLpCnoSy0NLLn08cXknKDuPGQ gYTInVr7Mv6sz5/UedpbbXKAgGCEtbEPUwJS3HU859+6q2mrf+Vst5r6bVYq4QYO4FOSwRHoda1Dn 5iV/2BvS3JTHI2796pUfUpALVlmDgyKCBvF/8JWEkyCLv2cJ9H9RqEbD681UXQ5f6iLi2mlHWJs6k +YJbLW+C+/rFR09hhGpAEembhtRGCh+/zp9btJ5yU++252/kk/VTdEAS56sP+b2VQVAXRo/gquNr/ Yo5hUC4w==; Received: from willy by casper.infradead.org with local (Exim 4.94.2 #2 (Red Hat Linux)) id 1q3dRi-005SM1-Ch; Mon, 29 May 2023 14:02:02 +0000 Date: Mon, 29 May 2023 15:02:02 +0100 From: Matthew Wilcox To: Hugh Dickins Cc: Andrew Morton , Mike Kravetz , Mike Rapoport , "Kirill A. Shutemov" , David Hildenbrand , Suren Baghdasaryan , Qi Zheng , Yang Shi , Mel Gorman , Peter Xu , Peter Zijlstra , Will Deacon , Yu Zhao , Alistair Popple , Ralph Campbell , Ira Weiny , Steven Price , SeongJae Park , Naoya Horiguchi , Christophe Leroy , Zack Rusin , Jason Gunthorpe , Axel Rasmussen , Anshuman Khandual , Pasha Tatashin , Miaohe Lin , Minchan Kim , Christoph Hellwig , Song Liu , Thomas Hellstrom , Russell King , "David S. Miller" , Michael Ellerman , "Aneesh Kumar K.V" , Heiko Carstens , Christian Borntraeger , Claudio Imbrenda , Alexander Gordeev , Jann Horn , linux-arm-kernel@lists.infradead.org, sparclinux@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-s390@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH 05/12] powerpc: add pte_free_defer() for pgtables sharing page Message-ID: References: <35e983f5-7ed3-b310-d949-9ae8b130cdab@google.com> <28eb289f-ea2c-8eb9-63bb-9f7d7b9ccc11@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <28eb289f-ea2c-8eb9-63bb-9f7d7b9ccc11@google.com> X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, May 28, 2023 at 11:20:21PM -0700, Hugh Dickins wrote: > +void pte_free_defer(struct mm_struct *mm, pgtable_t pgtable) > +{ > + struct page *page; > + > + page = virt_to_page(pgtable); > + call_rcu(&page->rcu_head, pte_free_now); > +} This can't be safe (on ppc). IIRC you might have up to 16x4k page tables sharing one 64kB page. So if you have two page tables from the same page being defer-freed simultaneously, you'll reuse the rcu_head and I cannot imagine things go well from that point. I have no idea how to solve this problem.