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 CB69DC3271E for ; Fri, 5 Jul 2024 04:32:44 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2A7286B0096; Fri, 5 Jul 2024 00:32:44 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 258286B0098; Fri, 5 Jul 2024 00:32:44 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 11F0D6B0099; Fri, 5 Jul 2024 00:32:44 -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 E97416B0096 for ; Fri, 5 Jul 2024 00:32:43 -0400 (EDT) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 62C58A31DE for ; Fri, 5 Jul 2024 04:32:43 +0000 (UTC) X-FDA: 82304428206.13.CC5C662 Received: from mail-pf1-f178.google.com (mail-pf1-f178.google.com [209.85.210.178]) by imf26.hostedemail.com (Postfix) with ESMTP id 6CA0F140010 for ; Fri, 5 Jul 2024 04:32:41 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=fromorbit-com.20230601.gappssmtp.com header.s=20230601 header.b=ZIxWuK5s; spf=pass (imf26.hostedemail.com: domain of david@fromorbit.com designates 209.85.210.178 as permitted sender) smtp.mailfrom=david@fromorbit.com; dmarc=pass (policy=quarantine) header.from=fromorbit.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1720153927; 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=JaNUdVKAXYAbRIpln8ABSTH2bFgFz52Xo4pVr+BWnIk=; b=PmFtWq/TYsZoo18xBdHeisSJtKUdpz0OLKkQaf1IeETkigOelRoK8o511zc3HubGIxaR28 M4oHXrohRvbiq/A8ONOGQot0g3nHpfz6zknbIu1GRcUHhJJZXTzXhOwvQOuOSh921BBdMA lXLhV20GFUNjMod4R7C+NKMU1/9TAt0= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=fromorbit-com.20230601.gappssmtp.com header.s=20230601 header.b=ZIxWuK5s; spf=pass (imf26.hostedemail.com: domain of david@fromorbit.com designates 209.85.210.178 as permitted sender) smtp.mailfrom=david@fromorbit.com; dmarc=pass (policy=quarantine) header.from=fromorbit.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1720153927; a=rsa-sha256; cv=none; b=lPP5LRBvTXC+jMmWCGsezmvgA3Tlp9ZtKyQuKJ6nQTujQCaxq9EXADf187TfVOtJZpOsyE 6wCrA5i2hZO+rTys9U9fVFKDZz+k6QyrJqmdN8UBp/JWjP2XhbXvuIEl9u2YS9pQ1UiaFH fzownENh8ZFojkAOLPzjNgthzJhYhmI= Received: by mail-pf1-f178.google.com with SMTP id d2e1a72fcca58-70b09c2ade6so446295b3a.3 for ; Thu, 04 Jul 2024 21:32:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fromorbit-com.20230601.gappssmtp.com; s=20230601; t=1720153960; x=1720758760; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=JaNUdVKAXYAbRIpln8ABSTH2bFgFz52Xo4pVr+BWnIk=; b=ZIxWuK5sn25YicTPFsl6mdFiM0G1trzms5w44qzwhlyHWsCNu1V1v/dWbw2vOkcm8C cDgcDNDKyZiHxxpxkojQjyk4I1+HfZEvg7x+lPlssZ+FkrQPE+gFvgdvEKg2gSdSipdR nAXLRwCLzt4D42GNNyZx1taraRyzHtmxKLIL52Fp2+ab64l5W4JgCsIaWRil1lQLRbhf 5LJ7uqJJTjS1imvnx++5R49ZnKgG19d1sspvY+zypafcHnIYkk8dfSvomy1JT0J3CkN3 SGbML2tVdyOmjFaxfqjJdB69pM7EsiACrqh8wNott6yQJloy0ddA1pRYWnJtdpZ/DueC zCHg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1720153960; x=1720758760; 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=JaNUdVKAXYAbRIpln8ABSTH2bFgFz52Xo4pVr+BWnIk=; b=lX8ReWAVATnALbi8GxlmtDry7jFihB0afMks1YBK5GwDH1uxgjiU5EIJMhBdAkIOfU bO0HyaMBcg4OuuKUu+Zy0Knf7hBqco15YYDVZaNv02qTvDDsRkQqjSDVNr06TH6H8ggh 7ADi8PVa08VSCJtSNZ0kLSL5SgWOkL3xZiGJy47HRZAEkKVj0suqv40X4dEa0FG6Vba2 Zbb0hK8Si7JX7e3RcytDEZjq7WumfzVPRujsXmgEwXbUB6NBmfvfM6yxOHl3j4eGkub5 wB8Na4ivMPZ/TIRPRhbrXQnRwX17zH2ExQzY7wb7xWFt34aqCRgZSfMbRqgQ/qcTupec 2uiw== X-Forwarded-Encrypted: i=1; AJvYcCX1FIkmv5qJ8/vH/wUTshHl2b1qmg+VHZHDSlDlf7u91O1znGBfWmM+Wjr+/LDnwvW4LGM2zcmiD1lG5p/5fUWVln0= X-Gm-Message-State: AOJu0Yw84e9R0kXI4dLWiK9QZCiFha8vI7XEVmAnfD+hevQQjhZUcnf/ rLho2dSxbJIgSWYeX6micYKr1xnH8XSM0GCJdj+uXqR6z5kntdodR+TwMQOnEqE= X-Google-Smtp-Source: AGHT+IGNNipKdGsi4XWy+dedlny7ElaFdUH7HAl5rueUaHfHmRKLnG/xTRjlLs78fkLSEdOgSoy6rQ== X-Received: by 2002:a05:6a00:4601:b0:705:cade:1f50 with SMTP id d2e1a72fcca58-70b00b0413bmr3372631b3a.34.1720153960020; Thu, 04 Jul 2024 21:32:40 -0700 (PDT) Received: from dread.disaster.area (pa49-179-32-121.pa.nsw.optusnet.com.au. [49.179.32.121]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-708044ae395sm13437861b3a.144.2024.07.04.21.32.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 04 Jul 2024 21:32:39 -0700 (PDT) Received: from dave by dread.disaster.area with local (Exim 4.96) (envelope-from ) id 1sPacf-004cOB-0b; Fri, 05 Jul 2024 14:32:37 +1000 Date: Fri, 5 Jul 2024 14:32:37 +1000 From: Dave Chinner To: Matthew Wilcox Cc: Ryan Roberts , "Pankaj Raghav (Samsung)" , chandan.babu@oracle.com, djwong@kernel.org, brauner@kernel.org, akpm@linux-foundation.org, linux-kernel@vger.kernel.org, yang@os.amperecomputing.com, linux-mm@kvack.org, john.g.garry@oracle.com, linux-fsdevel@vger.kernel.org, hare@suse.de, p.raghav@samsung.com, mcgrof@kernel.org, gost.dev@samsung.com, cl@os.amperecomputing.com, linux-xfs@vger.kernel.org, hch@lst.de, Zi Yan Subject: Re: [PATCH v8 01/10] fs: Allow fine-grained control of folio sizes Message-ID: References: <20240625114420.719014-1-kernel@pankajraghav.com> <20240625114420.719014-2-kernel@pankajraghav.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 6CA0F140010 X-Stat-Signature: atykiqycc4coxza59y5oe1ko1s5okmpo X-Rspam-User: X-HE-Tag: 1720153961-737877 X-HE-Meta: U2FsdGVkX194maZrqhHvdAULtxGVgDiXR59a+dCaBf4T1/i0RuoaznxzV0v6k9vd3Xl5J7LiaHvPmCG8e7ByjIMRzIxROnezsEvJZoF9W5Hlu6EMB3B1NRn0qGH/+EB7T4iYaGWYheGr3+6gqQ4sZ/1Ku2xiZZHYImb8R7uU3C/RItFm6WfrHlG01ts2zuj9O7ExRXf8ZplJHWZykHB7D+gYpsZuft9C79mUPkvosNJLK6ONe8P0BKs6ZtocgN6O0LXJ0NL/yZuortbKOVbU9YLh+5FKoaQzmSiuGlvgoeLmP4yQL38vm6InL2tp9lvTVhHB/duiUVe6rKhlJY3xXKGoiU0lX+1Rs4OB/SfNg05YXSELWcw06dY941E6tC7eASUtPdZKKOU8l4oZXkR1oA1APQF0qKQidQrC7hcYywJaRuUp9LxttkWwOZI/yUPE8Js/eiRlgu3G26eqISpNhSP4qWmTzus5363pZVQGw3c07bzhREjpjSspAUlNCQcFnih6OK1FJoN/kz/IwkbLZFPSiycnBSL/EiZM4V6U8CNdF/YLmrVQuvsgGtQdGy2dAvMI7QumjwdYcygk5tcKa8xtj/MQTA3WFI0Ojf7he2J5yqrBEQP8IQZZggIPTnGdzZlQg1FuAt81XJxho8bc/FWN3WEgY8iNyy6o6TPGdJHA60QpeLHEJpQ9uj2jhzux0We66WKyq8xBX5O9Mu8wJIQ81tkoiiTyEFniPPsMShatm2Nvxds60SZnOmtp9iEvtIatDvJQaQdZU5JJsA7xbPnwyYZWMzF+XTY188yGl5IqbIX3MEFdg805qXoFnFTEgC7iL3M1C8i3hCHUjWA2KJim3SHCW9qogTOXyEHZ6MTF7U4ewgnMCTDQBo+ik5LraiAiU695W2Igb6721hZnHortz+zl0TBHlDSQ1qoqfSuSt6fudaHYfQ2Cfv7HtyWGmNe1BZmIvLwKuedTZ+d V6IqhzPN qTyhsncZ1mJtp7pZUDEPLQeaY42WX9VkbqwMmB61rhAEo/hYCPTWDe47N1sNw2lFWqrJHnM9VIZp4K284OtlRVr2i6IP9QwBmooVx1gcCovzTRqcBDWp9uaIwstvRFLDNCG6zTZM1sfNhhRi0GiZ4TjRPMpi9cB3o+aTHhgQ9qGfVsNk1EfYdRL3hIp5huDDqjqfK/01UsekHahJI7mtIws4wli49RNT/Bo4j59tt5w63eCWiYi/OMHe8jR1DjW+cIDvYbnQlQZX1SHjBxU4mcgV9PBpGBOZ2Ag/sGGgRewBR12jDY+2JG27oDZkWDJzqLCE7tleIguFnRZ/JfPApix0JiKqiTgT+5k7hZEaZJ/LSChrh835zITBY8jhxPRlnHCwb6LsRURNoge0= 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 Fri, Jul 05, 2024 at 12:56:28AM +0100, Matthew Wilcox wrote: > On Fri, Jul 05, 2024 at 08:06:51AM +1000, Dave Chinner wrote: > > > > It seems strange to silently clamp these? Presumably for the bs>ps usecase, > > > > whatever values are passed in are a hard requirement? So wouldn't want them to > > > > be silently reduced. (Especially given the recent change to reduce the size of > > > > MAX_PAGECACHE_ORDER to less then PMD size in some cases). > > > > > > Hm, yes. We should probably make this return an errno. Including > > > returning an errno for !IS_ENABLED() and min > 0. > > > > What are callers supposed to do with an error? In the case of > > setting up a newly allocated inode in XFS, the error would be > > returned in the middle of a transaction and so this failure would > > result in a filesystem shutdown. > > I suggest you handle it better than this. If the device is asking for a > blocksize > PMD_SIZE, you should fail to mount it. That's my point: we already do that. The largest block size we support is 64kB and that's way smaller than PMD_SIZE on all platforms and we always check for bs > ps support at mount time when the filesystem bs > ps. Hence we're never going to set the min value to anything unsupported unless someone makes a massive programming mistake. At which point, we want a *hard, immediate fail* so the developer notices their mistake immediately. All filesystems and block devices need to behave this way so the limits should be encoded as asserts in the function to trigger such behaviour. > If the device is > asking for a blocksize > PAGE_SIZE and CONFIG_TRANSPARENT_HUGEPAGE is > not set, you should also decline to mount the filesystem. What does CONFIG_TRANSPARENT_HUGEPAGE have to do with filesystems being able to use large folios? If that's an actual dependency of using large folios, then we're at the point where the mm side of large folios needs to be divorced from CONFIG_TRANSPARENT_HUGEPAGE and always supported. Alternatively, CONFIG_TRANSPARENT_HUGEPAGE needs to selected by the block layer and also every filesystem that wants to support sector/blocks sizes larger than PAGE_SIZE. IOWs, large folio support needs to *always* be enabled on systems that say CONFIG_BLOCK=y. I'd much prefer the former occurs, because making the block layer and filesystems dependent on an mm feature they don't actually use is kinda weird... -Dave. -- Dave Chinner david@fromorbit.com