Received: by 2002:a05:7412:b10a:b0:f3:1519:9f41 with SMTP id az10csp307678rdb; Thu, 30 Nov 2023 05:32:34 -0800 (PST) X-Google-Smtp-Source: AGHT+IEPYsgKMvMIc3HQt/fCg+D/9EyimRzyzlzEb0zmMbXzafA7ad4tyL2FxwETlxlFlPpVR4RA X-Received: by 2002:a05:6a00:6c85:b0:6cd:edef:4b02 with SMTP id jc5-20020a056a006c8500b006cdedef4b02mr1258572pfb.26.1701351154219; Thu, 30 Nov 2023 05:32:34 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701351154; cv=none; d=google.com; s=arc-20160816; b=mOayLY0XhxOq3rgJ+EDodLNgFiFj9XQTw/+Bk1+rm0OpsWgcW5d+ufEKG9hKrC/FwC 3TmzN0aMm5vaPpMlnUCrNFanIXYG2z/X+03qfdmC8lsu8+CdCaY7TBoogSETxv10aDVQ 8Hlp3g0o8mr8pnawMZO36aAF5dGHSJS5rpMyN5puNwUjqsaWnTdux0JaNWlmhsnqsISa jdn0uoxe8aL/xvXfmJbCF5SK9w6r0yQQT4s+KQxscRs+3xpqjp9rzRAnp4ENUxzaqPtZ uuHXgwVkbdvHyazw7Zk+rBioqdc92Lr1/ZrNGIM5gkjD1VEmAlv8+Cc9iCSfZKbYIAR9 9lgg== 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; bh=JEKNj+ruHYyJ8669AYqGE7FfYjvQ74djZNcC/FMfZFc=; fh=nahs8VuHdUwO/9HB6Vbbc81SAkqzW9wcmAQMW6SL/zg=; b=m8aLVyP5xPSnKGOgx04mduikjr9Nz42hCx5/+Cm88yzW3xa9RVOWb1j+wJCFR2C1D5 rZMXwIA1Yj8MBxBrJifawX5X5sL5tps9v/TTdmMVEsTn3A+JoGqpjx0XhyCo7BBKyI9N onAC2oeOzyuOweeoP3DJuulbNOEbDEKPCiDBp/mVSn0P3G9/DRWwk7qYwOOj/lMv6+M4 +3KZvW4SrN9bQ2vgdDwdgScSMajIi7pcvwEizQmMBnRkzuTKMD9G2gUMKpEnWAw6/ln4 bMLemSvLjbNKVzKDMgEF7Qq2TkabzVuCIUH93WPvfh6r8zlEo7xjfvJZbdMxdJQQEMRQ PGDg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:1 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from morse.vger.email (morse.vger.email. [2620:137:e000::3:1]) by mx.google.com with ESMTPS id t24-20020a656098000000b005b874265d1fsi1303731pgu.513.2023.11.30.05.32.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 30 Nov 2023 05:32:34 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:1 as permitted sender) client-ip=2620:137:e000::3:1; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:1 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by morse.vger.email (Postfix) with ESMTP id 0944E826EE0E; Thu, 30 Nov 2023 05:32:32 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at morse.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345526AbjK3NcT (ORCPT + 99 others); Thu, 30 Nov 2023 08:32:19 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53128 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232100AbjK3NcS (ORCPT ); Thu, 30 Nov 2023 08:32:18 -0500 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 8537BD48; Thu, 30 Nov 2023 05:32:24 -0800 (PST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id CA30DC15; Thu, 30 Nov 2023 05:33:10 -0800 (PST) Received: from raptor (unknown [172.31.20.19]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 415D63F5A1; Thu, 30 Nov 2023 05:32:19 -0800 (PST) Date: Thu, 30 Nov 2023 13:32:16 +0000 From: Alexandru Elisei To: David Hildenbrand Cc: Hyesoo Yu , catalin.marinas@arm.com, will@kernel.org, oliver.upton@linux.dev, maz@kernel.org, james.morse@arm.com, suzuki.poulose@arm.com, yuzenghui@huawei.com, arnd@arndb.de, akpm@linux-foundation.org, mingo@redhat.com, peterz@infradead.org, juri.lelli@redhat.com, vincent.guittot@linaro.org, dietmar.eggemann@arm.com, rostedt@goodmis.org, bsegall@google.com, mgorman@suse.de, bristot@redhat.com, vschneid@redhat.com, mhiramat@kernel.org, rppt@kernel.org, hughd@google.com, pcc@google.com, steven.price@arm.com, anshuman.khandual@arm.com, vincenzo.frascino@arm.com, eugenis@google.com, kcc@google.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, kvmarm@lists.linux.dev, linux-fsdevel@vger.kernel.org, linux-arch@vger.kernel.org, linux-mm@kvack.org, linux-trace-kernel@vger.kernel.org Subject: Re: [PATCH RFC v2 19/27] mm: mprotect: Introduce PAGE_FAULT_ON_ACCESS for mprotect(PROT_MTE) Message-ID: References: <20231119165721.9849-1-alexandru.elisei@arm.com> <20231119165721.9849-20-alexandru.elisei@arm.com> <20231129092725.GD2988384@tiffany> <4e7a4054-092c-4e34-ae00-0105d7c9343c@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4e7a4054-092c-4e34-ae00-0105d7c9343c@redhat.com> X-Spam-Status: No, score=-0.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on morse.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (morse.vger.email [0.0.0.0]); Thu, 30 Nov 2023 05:32:32 -0800 (PST) Hi, On Thu, Nov 30, 2023 at 01:49:34PM +0100, David Hildenbrand wrote: > > > > + > > > > +out_retry: > > > > + put_page(page); > > > > + if (vmf->flags & FAULT_FLAG_VMA_LOCK) > > > > + vma_end_read(vma); > > > > + if (fault_flag_allow_retry_first(vmf->flags)) { > > > > + err = VM_FAULT_RETRY; > > > > + } else { > > > > + /* Replay the fault. */ > > > > + err = 0; > > > > > > Hello! > > > > > > Unfortunately, if the page continues to be pinned, it seems like fault will continue to occur. > > > I guess it makes system stability issue. (but I'm not familiar with that, so please let me know if I'm mistaken!) > > > > > > How about migrating the page when migration problem repeats. > > > > Yes, I had the same though in the previous iteration of the series, the > > page was migrated out of the VMA if tag storage couldn't be reserved. > > > > Only short term pins are allowed on MIGRATE_CMA pages, so I expect that the > > pin will be released before the fault is replayed. Because of this, and > > because it makes the code simpler, I chose not to migrate the page if tag > > storage couldn't be reserved. > > There are still some cases that are theoretically problematic: vmsplice() > can pin pages forever and doesn't use FOLL_LONGTERM yet. > > All these things also affect other users that rely on movability (e.g., CMA, > memory hotunplug). I wasn't aware of that, thank you for the information. Then to ensure that the process doesn't hang by replying the loop indefinitely, I'll migrate the page if tag storage cannot be reserved. Looking over the code again, I think I can reuse the same function that migrates tag storage pages out of the MTE VMA (added in patch #21), so no major changes needed. Thanks, Alex > > -- > Cheers, > > David / dhildenb > >