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 40B63E7716C for ; Thu, 5 Dec 2024 15:12:29 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B1F4F6B00A3; Thu, 5 Dec 2024 10:12:28 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id ACF836B00A5; Thu, 5 Dec 2024 10:12:28 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 996B96B00A6; Thu, 5 Dec 2024 10:12:28 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 7B9946B00A3 for ; Thu, 5 Dec 2024 10:12:28 -0500 (EST) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 25CD3AF66F for ; Thu, 5 Dec 2024 15:12:28 +0000 (UTC) X-FDA: 82861246062.03.8840718 Received: from mail-ej1-f46.google.com (mail-ej1-f46.google.com [209.85.218.46]) by imf28.hostedemail.com (Postfix) with ESMTP id 2D5CDC0028 for ; Thu, 5 Dec 2024 15:12:06 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=hkN697FS; spf=pass (imf28.hostedemail.com: domain of amir73il@gmail.com designates 209.85.218.46 as permitted sender) smtp.mailfrom=amir73il@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1733411529; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=22+sRwABD4TsULmuQGwY0XteY5m/N+4UW8zh0IGgdA0=; b=oSbE8ljNJ8FIk0CKBkR1NGpMxikT//xEOiCMWreEtA9a6JBVkiOhmbPF5EQguRhmGb2qeC oD/Yx+at71nxS5OmwM2gK11CgQspIWnbwFK0USwMFVMBubZj0gsIZTOTrswKkAN/63H6H7 N+jZuBQriniMMYHZ9li7kY7D162XHjA= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=hkN697FS; spf=pass (imf28.hostedemail.com: domain of amir73il@gmail.com designates 209.85.218.46 as permitted sender) smtp.mailfrom=amir73il@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1733411529; a=rsa-sha256; cv=none; b=0HzdMhlVb69i5v/cGFcRuZkHDtLC8I2w6pm00JHWcsdjPUnOfh1zLZaRS8gYdsBw1CFRYB 4Qmw08+widjsbDLfC35EHJoEcPGv0pwy+Qk+ajKgWzOtwzq9cwzoYoiItyk0/dKXZqrhlk hqIDeEq/d6ES2MFP04znleoDjULfJDg= Received: by mail-ej1-f46.google.com with SMTP id a640c23a62f3a-a9a0ec0a94fso127308066b.1 for ; Thu, 05 Dec 2024 07:12:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1733411544; x=1734016344; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=22+sRwABD4TsULmuQGwY0XteY5m/N+4UW8zh0IGgdA0=; b=hkN697FS/HLW2nW1ABYUZ/3/xxEy5VjhJ1MCzjnsxuEVx9t1XnaAWKxq71d5yIwufk cbkdUKxZeFmysXTtKWNLWtjRT/hMcdFq7k+GXoT3iYEN4cniMUDCA74C6Ls5m4I9vI8s SJ5YwZmrf2B9yd47lv9mhJugMGTiH78VeM5cZQcJypFW8H2csPJ1DvwkXs0tWJ9OMSfl 4kRDlhhmROwcZChXZ92frhPbMufWjDAiBaTqc9Md8CBw8Flxe8PRZ3dvD2GSeLJ5LWFe yW7KnoUCtnJpSTvogfElL8fbTocdB3c7fJWN9WqR5C3sWvlJe5g1aLB7mWWRJoINm4Tf QTIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1733411544; x=1734016344; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=22+sRwABD4TsULmuQGwY0XteY5m/N+4UW8zh0IGgdA0=; b=dAsRpCSDnI0ZAXCqrVuU7j1+0k1gXWZrMT33SYQPPb2VETpunDyg8W9RrOGgRPIGue JGclhqUekSVtTIAGd9Ob5sTw7z4xA7f0pMj+2WfDew7Fu/gfOjdQvqbxkxiS5N6muYa+ keL/1YcdISHJv26NeDJaYYzInPdji2FjUQYil+HgIdJunwDcXmxZjG/MDiKFZ8OzaHWB 4KH6L02Gf6Ddcsms5wXBcDc3iqJdU4kR2z787W5rnlcR2rDR3NgYt8FkHwhEgcSSX6vB dKo9psAAVVs4ag8uInkoAHJTVMWZlB4bbnFIgq5k9jogfOYIpElxmEKXSkHK0j0wN3f4 4HzA== X-Forwarded-Encrypted: i=1; AJvYcCVnfWk6PVY63J758DyY+bcnaCgnf+/KtwTLSfBokqgu93/4jYpWelF5dK8UrYdnajfiu63hvC6pyA==@kvack.org X-Gm-Message-State: AOJu0YwIpv6gZ+9h7uKjGVl2uyVB18MQPheYEGnmoocF4cJ1yoCpYRMg fX5TFwmOI8Rvx40yT1SSOuGPzc5TqeVOtuVcd07DKm1HdjK8pM4bq939yafm2/5xYq80FtX9iCj MZnIgXLrI/9GHaGr2YnerWvEk7+4= X-Gm-Gg: ASbGncsZiGZrKTxT3aKuNVCwwoOW8WNmDd9L0eijfeoCc0ZD5cZ+LSdbIgF+OoNtwji BxWpAlEouYiyfJDlbRd4xRFeNMWViDTc= X-Google-Smtp-Source: AGHT+IGBfmAAGw1LFiSiin+rL8yu62i8IyQB4MeO6gdxogmo++x+m4vYobcYK9MzG2737rUsF8Sv1a16AJm9Cw9Hkik= X-Received: by 2002:a17:906:3099:b0:aa5:47f8:b91c with SMTP id a640c23a62f3a-aa5f7de33f2mr788717466b.25.1733411544057; Thu, 05 Dec 2024 07:12:24 -0800 (PST) MIME-Version: 1.0 References: <20241205143038.3260233-1-tujinjiang@huawei.com> <69b72e3d-b101-4641-9ce5-51346c93a98d@lucifer.local> In-Reply-To: <69b72e3d-b101-4641-9ce5-51346c93a98d@lucifer.local> From: Amir Goldstein Date: Thu, 5 Dec 2024 16:12:12 +0100 Message-ID: Subject: Re: [PATCH -next] ovl: respect underlying filesystem's get_unmapped_area() To: Lorenzo Stoakes Cc: Jinjiang Tu , miklos@szeredi.hu, akpm@linux-foundation.org, vbabka@suse.cz, jannh@google.com, linux-mm@kvack.org, linux-unionfs@vger.kernel.org, wangkefeng.wang@huawei.com, sunnanyong@huawei.com, yi.zhang@huawei.com, tujinjiang@huawe.com, Matthew Wilcox Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 2D5CDC0028 X-Rspam-User: X-Stat-Signature: wzoc6fw9oq73qx6syqecj8jiigxk1bmq X-HE-Tag: 1733411526-462819 X-HE-Meta: U2FsdGVkX18qAkQgXFtMWn8TmgkiTBzn4AYVgHDPmoNexlGv2SRp2zP+qK4pfTGOcmkNaEP++V1BrZrlIBYvv76FFuPHymq+U4+uNFVUQIzl+aYCyUYl1ZOAOYF+xaLpdm7wpLbi+f9MpP0Yok4woRvCcIEhobAFh5sMTKJRtiwgizLw5IbAad1gSsBoBeAOFlcKAVyifzFumxdeAiQ4y9vKkrG9haa5O94eHGJtCDv6x2KgqBqNs9vq2tpDKl5Rso4kLyzkjcdETGHOxPIKUJcYKmnQhErS/vp1LyRjXm61HEtp6gk/eKBAqnBy9kXQaoIhynhxFKYCU2cUzg5W1mm04wrjpKYD4t3Vl+dVYH6H/dRdRQzwBCy9mX1WvwqWk9k4LwUnnDDncP4TP2g+RPRnWgspsfiPGidYLufCnlE125SXQFhnpY45It8/EoWntmg2UlTmM+WwsuYPDB2WRzYHXe3z9qrilaxEEUaiHdTOWyld/Rt2gbcH8yn3Sunv6hrzN45w4fE7/275qHUdwQ3s+NlNTJMBOvbwLq7jXBhG0nn7LOj5whArBl0Juh8AglJouWgqilwRYliRkRFQGS4Ppi7B5AipKaSRCYEbaTbUBXFE2/Wor9SuMrHdV8eD2p3xr5uPblVlUvn0MK5P6LYTkeJwonj76Sphl5i8OXnulFySlc6sqIloiw7VWWFsj5ONRj3wySebTLG3RDsT4kmonkP70FxZkywKzbbBsGUXYrIgd3N0iUuypciQdCoajnJb2+aRqYn7zqkPOrUHniLUpIUqS6J0y4CIR452bQrE+Xvv14PtOdg+3s7sX08ONXntViuPfesI6O8W7kwnKOAEkX/TNJNEwOjQJl6AolKzbeeE7/JAOhtKiV/OTuELvBbxBsflL5P+vzfQgMVvmSB2RA/7sckT+FNjH/433h/fGPFFnt2LbDKdcchjib9+ISS2r/IV8GuBi5TgDN/ d8tGQ0zi 1aNuaPCv84+2260pdcv8+Quy7BR5jmPnpn09zm8o1LxThlMmFy06kdKblO7OpoQyil14kH8ggHsZ+q/+8gM5WXD9K9vNTPb05I1XIvCLSFTxNJkq5228ONqRBbsicQw9OYrHtvGpwdWZvLn39INeXObXUtLOQ21Dko8eG3XF0Jfl7LDbvgJyurTk/Dx681Eb/pOTssz+In8NKqtfjh10Tv56TsN0I0ByL18oYjMgibeO9OXaxr68BTCHp82vmxbEUzA9UPS06JFdavzdbj8YlZw+zzaJoDlb/W5h/4FtGRVXPeZu1KY6UWXxSZ6+bbo7reUrtvwrwYtiX1EhqgWwD1BmqHqUMyBLo49+iLm1kkjRymR3v8e7H4/pTK0OV48x8zkHtjsqM78zJVfo= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000900, 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, Dec 5, 2024 at 4:04=E2=80=AFPM Lorenzo Stoakes wrote: > > + Matthew for large folio aspect > > On Thu, Dec 05, 2024 at 10:30:38PM +0800, Jinjiang Tu wrote: > > During our tests in containers, there is a read-only file (i.e., shared > > libraies) in the overlayfs filesystem, and the underlying filesystem is > > ext4, which supports large folio. We mmap the file with PROT_READ prot, > > and then call madvise(MADV_COLLAPSE) for it. However, the madvise call > > fails and returns EINVAL. > > > > The reason is that the mapping address isn't aligned to PMD size. Since > > overlayfs doesn't support large folio, __get_unmapped_area() doesn't ca= ll > > thp_get_unmapped_area() to get a THP aligned address. > > > > To fix it, call get_unmapped_area() with the realfile. > > Isn't the correct solution to get overlayfs to support large folios? > > > > > Besides, since overlayfs may be built with CONFIG_OVERLAY_FS=3Dm, we sh= ould > > export get_unmapped_area(). > > Yeah, not in favour of this at all. This is an internal implementation > detail. It seems like you're trying to hack your way into avoiding > providing support for large folios and to hand it off to the underlying > file system. > > Again, why don't you just support large folios in overlayfs? > This whole discussion seems moot. overlayfs does not have address_space operations It does not have its own page cache. The file in vma->vm_file is not an overlayfs file at all - it is the real (e.g. ext4) file when returning from ovl_mmap() =3D> backing_file_mmap() so I have very little clue why the proposed solution even works, but it certainly does not look correct. Thanks, Amir.