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 09FAFC0015E for ; Tue, 1 Aug 2023 21:34:54 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2A6322800FA; Tue, 1 Aug 2023 17:34:54 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 255092800C8; Tue, 1 Aug 2023 17:34:54 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 144912800FA; Tue, 1 Aug 2023 17:34:54 -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 0139D2800C8 for ; Tue, 1 Aug 2023 17:34:53 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id BBE761C9CFE for ; Tue, 1 Aug 2023 21:34:53 +0000 (UTC) X-FDA: 81076840866.03.2EB1085 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by imf05.hostedemail.com (Postfix) with ESMTP id 9E425100012 for ; Tue, 1 Aug 2023 21:34:51 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=FYtj53Kv; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf05.hostedemail.com: domain of peterx@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=peterx@redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1690925691; 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=nHR+gYw7cHBLdaoz+kXX0wBV31cLT+GSZK2PmYnjFDI=; b=mH7E1V8WR2sUBo6GzyjK4znWsXJALSpHhJGE9GM04IwkLZ+4OLesIPfUgglg+3XgEalgqA jLSVzWnOzgOWz654sdE96Rs64/vcBPicyLtI0PHkKrzElXrwYGqKHe7jKLXhOl/Y96XP+a lSz0TgvG2cdKLT9WcQmkIBsA6Y76f8k= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=FYtj53Kv; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf05.hostedemail.com: domain of peterx@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=peterx@redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1690925691; a=rsa-sha256; cv=none; b=7KRxuzaP/XgULZLmhB2V2UqE6gG0pU+50lPNzAioclfVTpR39leykVOzMJcO+RhUzBN+zL iQxpBkEmsB105Yu1YngyThmAJ3YwdzosNApJ6XOP5abr9vLQaG4QGzm+hNPiEqULuvV8YW IFqSydGqgCjJyMgozLRKRJaCjKrAGWg= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1690925690; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=nHR+gYw7cHBLdaoz+kXX0wBV31cLT+GSZK2PmYnjFDI=; b=FYtj53KvOv6CG02vXIxPUW0j5IoMK69VYe7G594u7DHCvRkRBjGbzmfleBQrsN2c5nohzZ VszvvzvLqFy+x7Z6aB3oZATTmMaH7CqXHP0eix1lhKbDp082JHafMYCqP33Q1ESnZRNrNI vFSeecpVtFCYVwkYizjRDPNuC7CmMDU= Received: from mail-qt1-f200.google.com (mail-qt1-f200.google.com [209.85.160.200]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-605-RoPc433fOTSBogGlYIB3wg-1; Tue, 01 Aug 2023 17:34:49 -0400 X-MC-Unique: RoPc433fOTSBogGlYIB3wg-1 Received: by mail-qt1-f200.google.com with SMTP id d75a77b69052e-40ec97d5b60so5796911cf.1 for ; Tue, 01 Aug 2023 14:34:49 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1690925689; x=1691530489; 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=nHR+gYw7cHBLdaoz+kXX0wBV31cLT+GSZK2PmYnjFDI=; b=VsmFFHZLtWplEyHG/lJixGAClLHVc9xMLJuri9b+/A8X8uiqZznsWxHDOhfgxfhW2Q zNG9N0+wUxYQSzRqxaiaH+CUqnAHEIBHoLmOOMDU04ctQqYfCao0xOWn3etl9Vju5De+ BKxvCUHK8Q++snvkFl8XzlQyuyl28JykUbKnlC+Njz4NqVYxgZrmNNBmhx7pv8IT+qCw gx1cJymtDg8PR6EqkUu79fPn25MghJBjxbK0bnwLX+pqHtsTgNiqARtUkcgCYqesnYSV snKja/Wd/QQUV8/ZQSmbGJN7rTrywQOzB66jcfz9ZoUCK27wlvHTlvT9IgAekb06cBIu 60GA== X-Gm-Message-State: ABy/qLbpTWaijPLJTRfdyJ/Bda0PVrbVsQuyanUaeujlfYWENtzeHvqZ qsXNP0QJZxL0pqhdz5twiIiN6K73lJZ1Hy7iKiURHLKu5TxTOpDxxSajbhIyy/74qm2bsavYYq4 DOXK+uJ8xFec= X-Received: by 2002:a05:622a:148c:b0:403:ae76:12da with SMTP id t12-20020a05622a148c00b00403ae7612damr16141376qtx.1.1690925689353; Tue, 01 Aug 2023 14:34:49 -0700 (PDT) X-Google-Smtp-Source: APBJJlERXmNdWW2CNoL1GTyXMrbw7WyphoXCE2tsi7Ar+vBKiuIbu6/USybxg48TLXkKPEj8+66m3Q== X-Received: by 2002:a05:622a:148c:b0:403:ae76:12da with SMTP id t12-20020a05622a148c00b00403ae7612damr16141349qtx.1.1690925689073; Tue, 01 Aug 2023 14:34:49 -0700 (PDT) Received: from x1n (cpe5c7695f3aee0-cm5c7695f3aede.cpe.net.cable.rogers.com. [99.254.144.39]) by smtp.gmail.com with ESMTPSA id bq22-20020a05622a1c1600b0040331a24f16sm4706166qtb.3.2023.08.01.14.34.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 01 Aug 2023 14:34:48 -0700 (PDT) Date: Tue, 1 Aug 2023 17:34:43 -0400 From: Peter Xu To: Suren Baghdasaryan Cc: Linus Torvalds , akpm@linux-foundation.org, jannh@google.com, willy@infradead.org, liam.howlett@oracle.com, david@redhat.com, ldufour@linux.ibm.com, vbabka@suse.cz, michel@lespinasse.org, jglisse@google.com, mhocko@suse.com, hannes@cmpxchg.org, dave@stgolabs.net, hughd@google.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, stable@vger.kernel.org Subject: Re: [PATCH 1/6] mm: enable page walking API to lock vmas during the walk Message-ID: References: <20230731171233.1098105-1-surenb@google.com> <20230731171233.1098105-2-surenb@google.com> MIME-Version: 1.0 In-Reply-To: X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Disposition: inline X-Rspam-User: X-Stat-Signature: 67bhc6ucyskogigmnd1mj1fa7pn45yhd X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 9E425100012 X-HE-Tag: 1690925691-421166 X-HE-Meta: U2FsdGVkX19Y+u5+vD6ZhoMNr8Sp3T2avxGqFmNKehcKNia0Vy5i46oSyIkzUrsvnmIWKXbKdl/+GlZ+hJweO8+iMAFgUMTKpxYXcV9u+GWDLMltl9ECv7iWhw10NEmbwhw/sOYfd11acp9dgFlcRt0ECuAIBCBVZvd2f1+Do+NlpL0wpYvPVBGmb+4TVnDDYNbT6J+3eaIwOIaBjM8VAgFXoRWtzOWLRBwQCLzcjoLju6bzU4DwVsGBH6/GmxgR+KrhrPAbjuKXhYugD+6Sa39otBD5TInlQ3rfHUNBADs6wvMSKTwEqX1pr6dtsWzu/uAVMdx9umjpW83+saOq0RkzouA+oTQ5v+4g0uxkkArayADcGlr8dkuo8crz2q34IX5yWzF3RYGOCh9TOwJBPTuYW99T7hsmamFBXXl7Yt6rhprTPaOkvkpO0hkHpVXJtV9iRZ12iOyymFpMRfn02Hgw1qS+SNHGwrbG9qrEkyxniB92njtQKy6iBOSbdasOdjoVxKfGqeoVsOsvLzCDe1p5D3ku8lWeC4H/MBC/a8AvEsrFMb9Xp+7jIln9IyVy3sSDVmdmye8vZEDPSoeSkLemncdoVeGHs/AIrQpLPDV6SZ6RxugrUnDKAy0m8LVUhgy2VuxzKy+BZElqwzBdDZ5HTpyu3/9hwgSpMl+qfJkqTBzcGseNlj7LM/P4yNA8Nhfz6AbkSNS8f0N1fDO7C8jfxJRBfSzo8aO0pawMqPN7aXKY7sdiFUYag9O0dbpVoVD2JjTqdUzBBSC6DElxH+ZdO5ozyxkNZK+voljT4FcMM4/x0yKCUNyWuYynDUK0c3FPNAIZxnD7/7yQxg7pZ3j9b0ejNLWu0j9oEidJ258ET98RQnobW+doIyn12XQlcbPRYaEyqjbXWqX3gwYSrcEo0Wx/xIR47JnT02oxvQq20aDWSmaFi0K1H0w6Sz+XqYyCORUWJybOADAC2GR fZL24oQE Try/Zfsi1mCAR/DfTCmxJjIj5PU6qpTtsspEdnyShZS9W5tuxvItDTUJzVZ9HXkTyRvAMn4vYo9D+4k5BMvvlaOMqFXm9HnE770IiNRo9cYmDDpjKeB0Q8OrV+f4V+MRBGIFKf5xcatZs1YzlnZRhhOr4Y8t3jTgOyurMryx+9yW/VDe1FypU4wBW4j/HpSUIYykRavG1wPm8ZCBg/BbkOuks0hvEeoK5iauJN4GV7GprHDbpAfXa9dBn+yVbW+VQ7RekgtS6x1PMsGS+z6jgdVVufCskxFubOFLTbCrRn4vee60mPt5QS1V9/enAbXbJFSrbh3Hn5HVlWhhzljYNxp7/ULZzO7Pv2Ixi8Y0q8EpFBLjuB+vUWaQPe2CwbS3m/V8jv5pXD6Ln28Y= X-Bogosity: Ham, tests=bogofilter, spamicity=0.002520, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Tue, Aug 01, 2023 at 01:28:56PM -0700, Suren Baghdasaryan wrote: > I have the new patchset ready but I see 3 places where we walk the > pages after mmap_write_lock() while *I think* we can tolerate > concurrent page faults (don't need to lock the vmas): > > s390_enable_sie() > break_ksm() > clear_refs_write() This one doesn't look right to be listed - tlb flushing is postponed after pgtable lock released, so I assume the same issue can happen like fork(): where we can have race coditions to corrupt data if, e.g., thread A writting with a writable (unflushed) tlb, alongside with thread B CoWing. It'll indeed be nice to know whether break_ksm() can avoid that lock_vma parameter across quite a few function jumps. I don't yet see an immediate issue with this one.. No idea on s390_enable_sie(), but to make it simple and safe I'd simply leave it with the write vma lock to match the mmap write lock. Thanks, -- Peter Xu