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 79923C07545 for ; Tue, 24 Oct 2023 16:46:01 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 07E9A6B02CA; Tue, 24 Oct 2023 12:46:01 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 02E886B02CB; Tue, 24 Oct 2023 12:46:00 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E604F6B02CC; Tue, 24 Oct 2023 12:46:00 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id D69016B02CA for ; Tue, 24 Oct 2023 12:46:00 -0400 (EDT) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 59320140510 for ; Tue, 24 Oct 2023 16:46:00 +0000 (UTC) X-FDA: 81380932080.02.E79F152 Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf18.hostedemail.com (Postfix) with ESMTP id 8930D1C0002 for ; Tue, 24 Oct 2023 16:45:58 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=h3hHKUaz; dmarc=none; spf=none (imf18.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1698165958; 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=GMAFTNtWnm12yWRaZ75O/gVwatB6p/CE7HbexbbR0y0=; b=Mu4LnKrS06UKvBm6hNR2CsLprmSZXjueojqAz4eCdoH0R3YFhNbo+GDHci8F6Bw0geGhsQ YvtVuf88bDgdh4e5kakUhz7kFitA+ygRELs/3i14CnOytJLKNKdU4WxyhzrAaCLAiJLAMC mCC0o6o0LnjrzLuEN6XZb0ObZxt/Zuo= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=h3hHKUaz; dmarc=none; spf=none (imf18.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1698165958; a=rsa-sha256; cv=none; b=vGRwnaK8oQoENj6dHd+HZEOb99TVjChFFCh4q6RVWNbdCXP+PrOgM2LM7DdQG0pG6Plo6k kam1u0uzraoUUD55Pndd1IEwuZnGdldyIYWDrzv1XgWvM37/QHInXlR/pdnbGqMWlnS/u2 HG90gVM+tMlPAxZsOAmmIhoNbSdyJp4= 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=GMAFTNtWnm12yWRaZ75O/gVwatB6p/CE7HbexbbR0y0=; b=h3hHKUazF0w+AqrXJZ52L1PY03 1HrNDOZfLL8fBSNuoERzU7wgqScFvATDv1ljjww3j/uKx1NFNf+DPPCXTqCev7jUanoHcVYgaQYH7 AvU2RlteoElYKLtB1IIvC9j4Pb4vbo6pnQt+fjvHNFJjeRwgyCnSwjlbFBQxYxfmlkEMZlBLJKgCa f1G9B2GFd4PBXXhwxnJDDrV0Od29dBCbcT9uCZ6h3LSkyqgW2xhtikkjd4Xg9A7G9wu+k4I9IY5Oc WVaccXT/6OUjtp0XR14Vfm2w6IaCjxlbkCDuudUqsSxAEDYF3djLW2dqfSu68l9TfeUqL0pXWTxvt hRs4Yqow==; Received: from willy by casper.infradead.org with local (Exim 4.94.2 #2 (Red Hat Linux)) id 1qvKWm-003aXc-7J; Tue, 24 Oct 2023 16:45:12 +0000 Date: Tue, 24 Oct 2023 17:45:12 +0100 From: Matthew Wilcox To: Hugh Dickins Cc: "Liam R. Howlett" , Andrew Morton , Andi Kleen , Christoph Lameter , Mike Kravetz , David Hildenbrand , Suren Baghdasaryan , Yang Shi , Sidhartha Kumar , Vishal Moola , Kefeng Wang , Greg Kroah-Hartman , Tejun Heo , Mel Gorman , Michal Hocko , "Huang, Ying" , linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH] mempolicy: migration attempt to match interleave nodes: fix Message-ID: References: <77954a5-9c9b-1c11-7d5c-3262c01b895f@google.com> <3311d544-fb05-a7f1-1b74-16aa0f6cd4fe@google.com> <20231024151827.i7e2f6cheet4k5h5@revolver> <5b570bcd-e0fb-4473-7cfc-81b8b53d7712@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <5b570bcd-e0fb-4473-7cfc-81b8b53d7712@google.com> X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 8930D1C0002 X-Stat-Signature: fis6u1f7s7a5df63q6j71oqx7ru6fu3f X-Rspam-User: X-HE-Tag: 1698165958-918049 X-HE-Meta: U2FsdGVkX18jqYXj+lYhpcQZ1uIw9ExLO5f2yOFWCdbMQ7eIXofWlLKlimDYgvlaRrV3HARm3g/uJCikCfo1gqeN+XC0bBUDdL7Ww/RY6hFrdFE+SyyC2rG8vbCbvtQeC2gPOSGjMpyzPTIzzGLMszqsACziRwLbtPQAJx1V/kjb4icLzxUfv7B6+16p++3iYg93TU7wVp7m/IAPSm1CzP0YhROT+6nE+I5uO3rPLQG08gT82irTHERKYOyRtNld2iC0WMBS4eLopLERR0RJF/p+nevalIqPVyCrDUUHVC8SRjpk4tBH6B5RzIeDHwgFDKjV8CTM5L+nTPAbMugbKwqQ3iRGxNqm1Rz3p4KuBPt57yc8DjHViQLm6xjSdRSxSigMFyls58BypJxPVhCFjANcdY16dma5sDOtEaUReGhm4QX9u3ehVahcgK9hyoPlBrKQHDAoN2NK6n3dERIb+mMLncjSh5y+q8XBcZBHJF0fzsaed6cFCvMgkg+7BJJlhobxS8EMOMiqSY4iTPDSIMzpc7KNBHowWL0P4zQ0VDzcVAK7cUpQaCRruDEL0Dp1XyIRbyqKI4mr+c9NoJob8SSnmigRFsEsWLJ2i3/BWMZt+P0Hqye+5TffqgEGNgDybPsFEKO4y+hGJSfkPQVKQMrKSpDXy/6Vr084EZDbIn7ZA1Gqd2LuEsP+PjHvuPl3KimTGrlC0QR+cvLoNdVh4ta1Rd3X3I0NESyJHYybA/PR1NC8mXhIGS+c/NBNdQ8Y8PmcHcCVBLsL7Z34iA7gr9wJqETyzqTgGWoTgMUZXjVXNjgdTdY1OczpyDDp9PXG2V2rSj8Mr016Cy/tD/OjN34ww7dR6KTImj+nxHmU70twEF0D0rWkyi/8/Ru+ObryrCMi96Kz38RCfkY3O69qgffCI2dy3QQqQvm0H+og5xhP36NbRuI918Te7pFcpMTDFZCalSlt8pXueGKsYrJ myKG4bjI oDhiw7spntRBHDOLYdAQG2tAckn1keE1IrlEIp1XavvduMmvWJ2ww/TtZXGzpOZgx/VrAV+XK13WpwXfWX7JZysc9GngUP0gMQ/6eJcaPFjPJZ3JsWga7qCsUp3FWgq22xdBHuijavhZrGRWT0QR6rL+QYp+xz5lfmPbN/M8X8GTH1p+UwjfK1UYOzMfcorhsM7Anztzz7HSXFjzaKyk1JiaZ/giDZ0CmxYj6bNWfuTnzvNc= 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: List-Subscribe: List-Unsubscribe: On Tue, Oct 24, 2023 at 09:32:44AM -0700, Hugh Dickins wrote: > On Tue, 24 Oct 2023, Liam R. Howlett wrote: > > > * Hugh Dickins [231024 02:50]: > > > mm-unstable commit edd33b8807a1 ("mempolicy: migration attempt to match > > > interleave nodes") added a second vma_iter search to do_mbind(), to > > > determine the interleave index to be used in the MPOL_INTERLEAVE case. > > > > > > But sadly it added it just after the mmap_write_unlock(), leaving this > > > new VMA search unprotected: and so syzbot reports suspicious RCU usage > > > from lib/maple_tree.c:856. > > > > > > This could be fixed with an rcu_read_lock/unlock() pair (per Liam); > > > but since we have been relying on the mmap_lock up to this point, it's > > > slightly better to extend it over the new search too, for a well-defined > > > result consistent with the policy this mbind() is establishing (rather > > > than whatever might follow once the mmap_lock is dropped). > > > > Would downgrading the lock work? It would avoid the potential writing > > issue and should still satisfy lockdep. > > Downgrading the lock would work, but it would be a pointless complication. I tend to agree. It's also becoming far less important these days with the vast majority of page faults handled under the per-VMA lock. We might be able to turn it into a mutex instead of an rwsem without seeing a noticable drop-off in performance. Not volunteering to try this.