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 36C2AC001DE for ; Tue, 25 Jul 2023 10:24:21 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A124C6B0075; Tue, 25 Jul 2023 06:24:20 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 9C3256B0078; Tue, 25 Jul 2023 06:24:20 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 88AB66B007B; Tue, 25 Jul 2023 06:24:20 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 7859B6B0075 for ; Tue, 25 Jul 2023 06:24:20 -0400 (EDT) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 28FCBC0D5D for ; Tue, 25 Jul 2023 10:24:20 +0000 (UTC) X-FDA: 81049749480.25.8095BAC Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by imf14.hostedemail.com (Postfix) with ESMTP id 7EC5A100022 for ; Tue, 25 Jul 2023 10:24:16 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=JMRnDheh; dmarc=pass (policy=none) header.from=intel.com; spf=none (imf14.hostedemail.com: domain of kirill.shutemov@linux.intel.com has no SPF policy when checking 192.55.52.151) smtp.mailfrom=kirill.shutemov@linux.intel.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1690280657; 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=ZOzf9s0ReDDsEURy4Zg0WcfU3XOuAbMAnY0qpeBPPQA=; b=SlegfXtMAKcOw0icWaOuiqL2zUAswAqf6gVqngNWGsTq7KlFfXvCWGres9wIxGqGJUfXvL Uu62BMKhJBa5niIrDda04EWftQGXecNe6YaIJ4N/nC/TByPgzRGARf6CPNlXXeDrPiTxe4 KFieDvab/XJSLvsI1CPHsG4DM/HPDa0= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=JMRnDheh; dmarc=pass (policy=none) header.from=intel.com; spf=none (imf14.hostedemail.com: domain of kirill.shutemov@linux.intel.com has no SPF policy when checking 192.55.52.151) smtp.mailfrom=kirill.shutemov@linux.intel.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1690280657; a=rsa-sha256; cv=none; b=h44kK6RLhPg1mSYjCH+RPfdY9HypD9aO+PFbD8bsH0O32eCsRBk/tt6xuWmU7iOWbx5G1O FYhX5suOFctJGha5P3yfT3BuXRx/NDGjlhyQkNQuYzbNMhOE5ISo/c3fu+PsiyRMoVW8ZA iRhB8MY2AHmO02l+gch7L/1EKZNJdF8= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1690280656; x=1721816656; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=z2JgSRr57QfGjyG/fWEsaikXL6iwmaxUOjUdDAVtI0A=; b=JMRnDhehRgpJ9A/paBFj3KfV2OZmNt480Stan2YTeqzK5v2fGf7Ck3Ss L2T1BErFOXdoddwe6MMUwwGXlUd/c/h2RUOpN3FXdTHR+LMn2TWL3HMBU GFnbdDOHajyqbxHZ2aYOf4Qb7OydGUBotXEOELzti8Kuglw1FDBoeYi+o hgV9ZTZo89+Y8WcFrzAR/Br/CsFTheJCGPOiynxfy9Keqtew9Zv7+OXpP HZ6bPH//RUzWs71TBGPkoDTiLOpS71YUxypGpBzGZucFZxraPDh4lxPaL CwuWbpgtehZPsHfwlWwshO3vt+FcG2DSMA6ywruCyfY7Z7C4j2NBV8b31 w==; X-IronPort-AV: E=McAfee;i="6600,9927,10781"; a="347956829" X-IronPort-AV: E=Sophos;i="6.01,230,1684825200"; d="scan'208";a="347956829" Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 Jul 2023 03:24:14 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10781"; a="1056753039" X-IronPort-AV: E=Sophos;i="6.01,230,1684825200"; d="scan'208";a="1056753039" Received: from mlytkin-mobl2.ger.corp.intel.com (HELO box.shutemov.name) ([10.252.57.129]) by fmsmga005-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 Jul 2023 03:24:05 -0700 Received: by box.shutemov.name (Postfix, from userid 1000) id 171E4103A12; Tue, 25 Jul 2023 13:24:03 +0300 (+03) Date: Tue, 25 Jul 2023 13:24:03 +0300 From: "Kirill A . Shutemov" To: Sean Christopherson , Vlastimil Babka Cc: Paolo Bonzini , Marc Zyngier , Oliver Upton , Huacai Chen , Michael Ellerman , Anup Patel , Paul Walmsley , Palmer Dabbelt , Albert Ou , "Matthew Wilcox (Oracle)" , Andrew Morton , Paul Moore , James Morris , "Serge E. Hallyn" , kvm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev, linux-mips@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, kvm-riscv@lists.infradead.org, linux-riscv@lists.infradead.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-security-module@vger.kernel.org, linux-kernel@vger.kernel.org, Chao Peng , Fuad Tabba , Jarkko Sakkinen , Yu Zhang , Vishal Annapurve , Ackerley Tng , Maciej Szmigiero , David Hildenbrand , Quentin Perret , Michael Roth , Wang , Liam Merwick , Isaku Yamahata Subject: Re: [RFC PATCH v11 10/29] mm: Add AS_UNMOVABLE to mark mapping as completely unmovable Message-ID: <20230725102403.xywjqlhyqkrzjok6@box.shutemov.name> References: <20230718234512.1690985-1-seanjc@google.com> <20230718234512.1690985-11-seanjc@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230718234512.1690985-11-seanjc@google.com> X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 7EC5A100022 X-Stat-Signature: isyajrb8coaku6iwriwo44xqjgpspisc X-Rspam-User: X-HE-Tag: 1690280656-978862 X-HE-Meta: U2FsdGVkX1/C8WktVrNoxUlfE9FQ1GBuN+TUWKTZVPSOHWz6G1h6VDXHTAjiVVnpNcNJWZInnnO6Nw7HbNLFJsR9tL84CoZP2ggB+znzArFPOIeJek7R56HXYVJF4Srfto/ocaOdn3DpH1YWj/GQbc0ko0yUDVm6SSYaGlmAquTvZhd6VYNIQ0qvEnGHFFVed0ZlC0bB/jlMHuSelKwcPAxSNYeGYj7Ab3Cj+u+KPXaTcSOJUg8QtLpSuwigZyRsLebqsghCrxdMBDA3KAhwQFT421Jua247idnuyA52dgwXrMyuxgTSnIqszVsTzaAulK+1gEthqLxfCbWszBoe76nMT/65VlUYKbQ4IbXPw7664s9ZRNbKkuE0B1pVxXmybGMuySkl1OagFPHLKzzwncnkj91F3Kyih+grzUacLcFjNi4mY3vvNG2494YyKsfm8Q9XKnmbq9X4RMvUYD30JzbAFDfNXNXcMhAiSAmWJSH3r8snv482h8Ijc4Y4Htef03BUzAOYldQ3eJ+6ldSlJ/aa2QK13SoqLUCR92AKQzutfW2uciIdbt15uLHgFr4taKGnq4mzuISo0kAH49cJZfADebN5znUYBKwMJvGu19/VD2j+cnbdnPvFi9GgadKILC4LRljnE9lwr3XVn9hP0VvEcouvI9BN4qfC74WFqtFEN5SdTDdot2t5UpkFN+g5BoNGWsv/4mmS//MYbaOR7cAKpNhQgnDD2eEfrI8WMhabj0png41QgxrW35gh3tJNIdPAmZegWrAibHs4S6NK1tBH4zHvnDAAVJTSJl6aFUUUud86K2QH+GsJ+wMCCVH9K/su7uUP0fJkAA25qKJapV/ifmkMO1mLIv9Kj0H1h3n3+HNjLS/Z9WNWl2XfcDH/IdJYr/UffFuPCuaSp1VmtEwZE6ACeALpHrJ27jcal2YC9tbERKv7/s27FOvxlRb69HzlGHQX8qgk0F6V3Gk 0lqsvHcF oufErk3CoQTZiEvB4YBz8EzAyW/4ogjVdLAq1Qt4HXoSgla+YtpQKvoD5j6I6AZe4vR1AAut7WjdRhu9TojTyGzNbCqvIqtN1UFdcru2Y9V62pYcjBI76D82fbw7W7uRsrKnE9ipau9AjBI++uRcnOamQImsQ0rh1NIUCpbBspK2gdPnvk7q/rD84hmou3FPM49F/ef1yh0UQAPTDq02keUauJVCwoZWLVThLkP3tdHWwid5QNfz/h6JvytQ3NtKeRc6V 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 Tue, Jul 18, 2023 at 04:44:53PM -0700, Sean Christopherson wrote: > diff --git a/mm/compaction.c b/mm/compaction.c > index dbc9f86b1934..a3d2b132df52 100644 > --- a/mm/compaction.c > +++ b/mm/compaction.c > @@ -1047,6 +1047,10 @@ isolate_migratepages_block(struct compact_control *cc, unsigned long low_pfn, > if (!mapping && (folio_ref_count(folio) - 1) > folio_mapcount(folio)) > goto isolate_fail_put; > > + /* The mapping truly isn't movable. */ > + if (mapping && mapping_unmovable(mapping)) > + goto isolate_fail_put; > + I doubt that it is safe to dereference mapping here. I believe the folio can be truncated from under us and the mapping freed with the inode. The folio has to be locked to dereference mapping safely (given that the mapping is still tied to the folio). Vlastimil, any comments? -- Kiryl Shutsemau / Kirill A. Shutemov