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 B2663CDE006 for ; Thu, 26 Sep 2024 13:53:15 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 306726B008C; Thu, 26 Sep 2024 09:53:15 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2B5D66B0093; Thu, 26 Sep 2024 09:53:15 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 17E036B0096; Thu, 26 Sep 2024 09:53:15 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id EE4D36B008C for ; Thu, 26 Sep 2024 09:53:14 -0400 (EDT) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id A243E1409A7 for ; Thu, 26 Sep 2024 13:53:14 +0000 (UTC) X-FDA: 82607031108.02.2AD09D8 Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf08.hostedemail.com (Postfix) with ESMTP id C8D29160010 for ; Thu, 26 Sep 2024 13:53:12 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=rcPflZ7P; dmarc=none; spf=none (imf08.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=1727358756; a=rsa-sha256; cv=none; b=bUOcPiGB6erV4KAjAWIaUHST7ZOXuC8f8NJ/KPkgMqe9+1xeo9mlw388263Mgxw+mzXrBz ENnXIUTfRWV0bGH+jE0z4J785KwZgh0gXOtmhNjw+KjaRQiwR+XKqb+i8zyV6oNIbzzuNQ quiGubbpQ8VvibZIvMD4kjDG87ewjx4= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=rcPflZ7P; dmarc=none; spf=none (imf08.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=1727358756; 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=yRx6qLYwqz04Vp58gRtJGngnhFxcQA4gy1QsyF9WlLk=; b=5zZMLb2iCIOI68F10vv4rSIi3dOx5O0mWxk5qCy7f7fOLs2mMZeX+K/XA4LOeiLsob9Cv3 945/+CGzt240TuC39BdzrSK84Xz1IJmcYRsty/SsQS7goRt5HnrGOUTG0FqCayR+P8MfA2 5x9/biBXhD+iR/x+hA/zQHjLaNBoehw= 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=yRx6qLYwqz04Vp58gRtJGngnhFxcQA4gy1QsyF9WlLk=; b=rcPflZ7P4TxnglRWIss7fEwE1f nQv5JLt2+1MX1LQ5ZRBr+jC5NJmSI8yUSgDTy75t5hpXYeRwsLQ8ARfDpSr1YQ1HtgZbpuoJ/Nesr QmmUhpwYaqhPCmQHYEnlmDEN1Lpkpa46ZUDqFE9Pgy6aW3pD1yWBRusSuuUC0Q+09x4AXg6t0tfkn rKb1uhp5URDHSX0MDE5VVO49OXyfO4MxnUWnyjyp3V2AD+gilVSqOBCLYBJreIU45CGXxP/TRVdSY jiYgF/Ru8lsIVUNUoICRUkGXQhQaSeIhmiBVDvpkH722erBR+eOPsDbUw+fOBF4snl+6eIrwd9KLA Qn/sLLmA==; Received: from willy by casper.infradead.org with local (Exim 4.98 #2 (Red Hat Linux)) id 1stovU-00000006mVK-0LrT; Thu, 26 Sep 2024 13:53:00 +0000 Date: Thu, 26 Sep 2024 14:52:59 +0100 From: Matthew Wilcox To: "Pankaj Raghav (Samsung)" Cc: Kefeng Wang , Andrew Morton , Hugh Dickins , Alexander Viro , Christian Brauner , Jan Kara , Anna Schumaker , linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, Baolin Wang Subject: Re: Re: [PATCH v2] tmpfs: fault in smaller chunks if large folio allocation not allowed Message-ID: References: <20240914140613.2334139-1-wangkefeng.wang@huawei.com> <20240920143654.1008756-1-wangkefeng.wang@huawei.com> <1d4f98aa-f57d-4801-8510-5c44e027c4e4@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspam-User: X-Rspamd-Queue-Id: C8D29160010 X-Rspamd-Server: rspam01 X-Stat-Signature: w3z4ffamnwz69kgxsjy7ms9oacqn3ysn X-HE-Tag: 1727358792-525516 X-HE-Meta: U2FsdGVkX1+cwxHPvc1FAUs3exzAPdNXMXn1e+29HStn6A/0oAIRMSVQ4IYQbnJo7mjTkq/0eVgfHRjp5UqPhEyB9GBHrw26mTQTZg+CyBzTS7N2kLo9+/9RqCLCaiDTNJ/ng74EJFsLG+kBUydre8tt6yK/h4SOPScfFN4zRuDL7b9dOoL2huj95cnHKyVcUX7XdNLj+Vg+5O/8CGe97cQKlYFbHS19ybQg3EvQfoz/6WDR5mjQhV8quz5Nbe6zo/dXbeg85dGerOVp+01SAmHop3OyXrK3SB0tTKNdfPC16xPKqvN7QA1vw/geJTwXSsFF3kfI1VMxAi/5PDpFwNnmuo6nv+B+DeX7Plr6IcU0Rb+QHuXabdYWJLP5pQmYpSIFHyvconUcuRYwLvZJzF+MM8PI8GJzQiIuAMbaiihv+lTUJLoJhi9ZAdJMUc1dCziK0tU5tquzAhoy99N+I4kDcWSndMBrsDqPLDNvJCNvVME9S7nfAoyqZTBXnpGz2E5kl3bPcUTOXACEGdLt7FpeidgPSmHI9sDssKtXBrEtmjwD1rA01S2VG4ZdWFtcT7vJ/L0L+1ex6mX8FEKxtKNxn0//UJJk5HzpIQw/T7T5I913VyKs0BN3yCiNxgmgZctDic6nT1bGYrTzOvDCG/6Rh3byVU2ey+5vWLqef6qOLPVpsJwOLKxf32B4GhwGc0Be/ZmmEnqBMicMQMQnMnkzE5bRsRwIwywlgD4qHWRamYfIqphP/JdAllgsoPFvIPu+pz05z1RsyOFubPBbX7NFp6MoC9utLWfIiokdLYBppy//NTw/iDqhBJ0MVZylJhJV3KCX5J1bV/6aSKdQiXBz3asIxT2V2bNg7sJDnaK9UwNwFoy32y4ZAykTnbIbZTktph79r3Ws6WuyRZ0yoPKZOoNOoh1w/tP1qcjA1jtMMuuWN00MXsLeIxGzBx/vOSEMMX0hAcIPUN27jwv YdGdQEOs ysFrDeHOU+MiFLzT6OVFXQfrMj3R6T5EEaM0xKDorFsl3CejSFatOD2jDgXkIn8JK0HwZUKJhmEKOIIKd4DyFndF6Gdo8WDG1nkHIfahNjq4Ke3WBSrYF4epxyRMqsU4amBkQUo1sZ9vBEISSmZPkiXWR1pKtOsOJgLVY+oiECS6mkSaEzN+S9UO+JqnOmjRziWYfwQtEud5mqMDXufrFceb5n9p8qPjJmhbhjdAAGa23iHM= 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 Thu, Sep 26, 2024 at 10:38:34AM +0200, Pankaj Raghav (Samsung) wrote: > > So this is why I don't use mapping_set_folio_order_range() here, but > > correct me if I am wrong. > > Yeah, the inode is active here as the max folio size is decided based on > the write size, so probably mapping_set_folio_order_range() will not be > a safe option. You really are all making too much of this. Here's the patch I think we need: +++ b/mm/shmem.c @@ -2831,7 +2831,8 @@ static struct inode *__shmem_get_inode(struct mnt_idmap *idmap, cache_no_acl(inode); if (sbinfo->noswap) mapping_set_unevictable(inode->i_mapping); - mapping_set_large_folios(inode->i_mapping); + if (sbinfo->huge) + mapping_set_large_folios(inode->i_mapping); switch (mode & S_IFMT) { default: