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 76392C0218F for ; Fri, 31 Jan 2025 11:47:58 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E6DE12800E4; Fri, 31 Jan 2025 06:47:57 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id E1D302800E2; Fri, 31 Jan 2025 06:47:57 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CE40E2800E4; Fri, 31 Jan 2025 06:47:57 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id A61F92800E2 for ; Fri, 31 Jan 2025 06:47:57 -0500 (EST) Received: from smtpin27.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 93F791C7EF2 for ; Fri, 31 Jan 2025 11:47:46 +0000 (UTC) X-FDA: 83067572532.27.67F1849 Received: from frasgout.his.huawei.com (frasgout.his.huawei.com [185.176.79.56]) by imf15.hostedemail.com (Postfix) with ESMTP id 7B6D8A0004 for ; Fri, 31 Jan 2025 11:47:44 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=none; spf=pass (imf15.hostedemail.com: domain of jonathan.cameron@huawei.com designates 185.176.79.56 as permitted sender) smtp.mailfrom=jonathan.cameron@huawei.com; dmarc=pass (policy=quarantine) header.from=huawei.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1738324064; 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; bh=JoA6ouBducwbEW5AuIfSeyL0F2AHTGbUS2FqV3wa0tE=; b=CrKVtQrE5F/qfBIJyNsgleea26/pFNMJXm2enHiSO5D3W7ZRpXtJfWwMUwazIElBCFvvNQ 3TfrHMe78YJfHbs7S/ePTkpsyJ86hd5HQNpbAeyAIEeZhyv53V2cSx0oyrEa3atrJHld/f uJho5I3khjzrya8CP2HG8slTZ0QqBRk= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1738324064; a=rsa-sha256; cv=none; b=NFpHDr1L3CaJ1nqBMgtGfCQI64FN9SIYGiqZVzJaADrAgay/4GyuirLJXeztFRVK5OdQKZ Ikip7ez3m/r6aoSO0lk571djQWv0DWRqytdVENhJO8aEwZ3Ee2kiziz6e5zdr697XvNpEg oa1zOMAKkgAl1qzEEM64iXzHchRfA5s= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=none; spf=pass (imf15.hostedemail.com: domain of jonathan.cameron@huawei.com designates 185.176.79.56 as permitted sender) smtp.mailfrom=jonathan.cameron@huawei.com; dmarc=pass (policy=quarantine) header.from=huawei.com Received: from mail.maildlp.com (unknown [172.18.186.31]) by frasgout.his.huawei.com (SkyGuard) with ESMTP id 4YkvG65SSrz67Ct9; Fri, 31 Jan 2025 19:45:18 +0800 (CST) Received: from frapeml500008.china.huawei.com (unknown [7.182.85.71]) by mail.maildlp.com (Postfix) with ESMTPS id B1512140155; Fri, 31 Jan 2025 19:47:40 +0800 (CST) Received: from localhost (10.195.244.178) by frapeml500008.china.huawei.com (7.182.85.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.39; Fri, 31 Jan 2025 12:47:39 +0100 Date: Fri, 31 Jan 2025 11:47:38 +0000 From: Jonathan Cameron To: John Groves CC: , , , , Dan Williams , Ira Weiny , "Jonathan Cameron" , Amir Goldstein , "Miklos Szeredi" , Alireza Sanaee Subject: Re: [LSF/MM/BPF TOPIC] Dax, memfd, guest_memfd, cxl, famfs - Is there redundancy here? Message-ID: <20250131114738.00006db2@huawei.com> In-Reply-To: References: X-Mailer: Claws Mail 4.3.0 (GTK 3.24.42; x86_64-w64-mingw32) MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit X-Originating-IP: [10.195.244.178] X-ClientProxiedBy: lhrpeml100009.china.huawei.com (7.191.174.83) To frapeml500008.china.huawei.com (7.182.85.71) X-Stat-Signature: ate4dnro3xumcfjs8jwb9ztxhmfzruey X-Rspamd-Queue-Id: 7B6D8A0004 X-Rspam-User: X-Rspamd-Server: rspam06 X-HE-Tag: 1738324064-871 X-HE-Meta: U2FsdGVkX19c1ec35raNrT/AAtbCg2n/QmvaKmkwPUkjY7SIsFNOPcAJKcRHn5QVU9+R17e836X7BzLk5E713hnbzRXMbwik9kYSfzfekzMtumaTNFa1NdQ7mcc8NW1zVrygYxMdcpHCl1+Dc9kJgfx8IGgBLTi1gjetLU1jt0CR7iI9KvlznnxvSS2AgMFOg2Rauv7/cYgCLXbryDQqooPbFUqa//FmCVP7RlWFbTxGk1J2w5i9s9wHnYDKxC3MjCuy0TTVZNs7vKvS/pSCzb+RqREz08HpkpC0dsmtS1lu5WS+67l6/ohR3p062JbMkXuWi7TUrwwIS1Y388kWu6OIvn6U1f8QRf+rvfoJYpBwmzoqg2IHU94Q/AgpQ3PQE2AZ/izUFYbOnWcQNA+M2adrMI9IjRICugPHaZjtBdeQgvVIdhxD0HGfkjLpI6UoDYzwt/Wd9QZpccqUJWwo4ti+URHpAteyUG0hP9nYL+kznsJl0gXRDVytpfPjFQe/QFsPo3pzq/JBju1a4gUE5wR3H+UJGR1oMcj15RR+jyPtSBD5EyX8PSXrZ/Tp5EgYZUCHaiwYTIt6uf9aaKbnxfOgRfGOOtIKFlNZ93hAcu5J4/8XE5z+dXVqqWFL0wYAAE/slLrqdS9/ZjHOoSqk8HfFzD99gwHgeXNYB2yjvYMfMcdgcramBmJSUjLcXePEuh2yr1MgkA8lW7kaDoSReLovFptw4dzG8EIKcPt7+KfuK4mg0xL3ZhdZ9o4cAAxWK381fV2NHOOtP1Ow7qmeUXY4DPFBxdjbmGdR5hsMa5KQ0Bzt9bGAySj8cxZsXT7vbjRREvQ/PUtjEv2XpMAsO1RXjaq0jZxcwVB9bP99YXupHEKWIyqNHFk1o6C5xFuzM98Zzyqp2p9GdJOI3tLwa/p057wXf7Z0pyY5BwXFsLqmvnNbSbt3+IiohBQ8CSMxXbw/a32HxBlMQ9B9MCP AjyXoRjI Yi9Wjwb+1t8vRn6idz9NBt7uqJ1PwTVxxnhVwbzntq5KFSN5KL5+38F/Jtpewp5WqKkMVspBVrguaIn51OkVRiGB9B+lntz5X3lSZBAebQc4QNoMcePnbTPF8AJVYinVrxu1XAHjUxvczbcpOCmCQJlhMwkLjKiR53lVo3E8ATa9j+e9G3q9q4Jc8sno4vOorqCyNaubwiCaCXz+ygnzCVZTn+2+/J/HNNHT5BFxvpISIToWoxy3ymiCKOeFyC5QdBN7Ie+fpKD1zY2CixMbZcc/Ed1b3K9UxJfdnpTU7rzFUQ+tkSdc2w1RZlck89IFmImrF2FYIfM5ZITRlBaP4El2GUat+2DAM9tUu0Zi0J5oMR5iOmjkEggUpuL2pLi0azsWnW2d3HznBdVDcSSbgrMTjzRzrsJGzkf9+7OBZd4TK87U= 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, 30 Jan 2025 16:54:03 -0600 John Groves wrote: > I have been hearing comments that there might be redundancy between dax and > memfd - and have recently become aware of the guest_memfd work. A session where > we discuss these related abstractions, their use cases, and whether there is > redundancy seems like it would be useful. > > I come at this primarily as the author of famfs [1,2,3,4], which exposes > disaggregated shared memory as a scale-out fs-dax file system on devdax > memory (with no block backing store. Famfs is currently dependent on a dax > instance for each memory device (or each tagged allocation, in the case of > cxl DCDs (dynamic-capacity devices). DCDs create a "tag namespace" to > memory/devdax devices (and tags are basically UUIDs). > > Famfs, similar to conventional file systems that live on block devices, uses > the device abstraction of devdax to identify and access the backing memory > for a file system. Much like block devices generally have recognizable > superblocks at offset 0 (see lsblk etc.), sharable memory devices have UUIDs, > and may also have superblocks. The device abstraction of tagged memory is a > very useful property. > > I've been asked a number of times whether famfs could live on a memfd, and > I currently think the answer is no - but I think we are at a point where these > abstractions should be examined and discussed in context. > > Brief famfs status: At LSFMM '24 the consensus was that it should be ported > into fuse. That work is getting close but not quite ready to post patches. > Those should start to appear this spring. +1 for the topic, but I need to do a bunch of reading before such a discussion. I think the coco + famfs thing will eventually bite us so we need to figure out if we make DAX work with coco or make something else work as well that provides the same guarantees of VA ordering wrt to underlying storage. We need userspace on different hosts to see the same data in the same order! This also applies below and above whatever we do for virtualizing tagged capacity as well (I'm taking far too long to get back to a virtio proposal around that but have a colleague starting to look into it) Jonathan > > [1] https://github.com/cxl-micron-reskit/famfs > [2] https://lwn.net/Articles/983105/ > [3] https://lore.kernel.org/linux-cxl/cover.1708709155.git.john@groves.net/ > [4] https://lore.kernel.org/linux-cxl/cover.1714409084.git.john@groves.net/ > > Cheers, > John > >