lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260120091217.00007537.alireza.sanaee@huawei.com>
Date: Tue, 20 Jan 2026 09:12:17 +0000
From: Alireza Sanaee <alireza.sanaee@...wei.com>
To: John Groves <john@...alactic.com>
CC: John Groves <John@...ves.net>, Miklos Szeredi <miklos@...redi.hu>, "Dan
 Williams" <dan.j.williams@...el.com>, Bernd Schubert <bschubert@....com>,
	Alison Schofield <alison.schofield@...el.com>, John Groves
	<jgroves@...ron.com>, John Groves <jgroves@...tmail.com>, Jonathan Corbet
	<corbet@....net>, Vishal Verma <vishal.l.verma@...el.com>, Dave Jiang
	<dave.jiang@...el.com>, Matthew Wilcox <willy@...radead.org>, Jan Kara
	<jack@...e.cz>, Alexander Viro <viro@...iv.linux.org.uk>, David Hildenbrand
	<david@...nel.org>, Christian Brauner <brauner@...nel.org>, "Darrick J .
 Wong" <djwong@...nel.org>, Randy Dunlap <rdunlap@...radead.org>, "Jeff
 Layton" <jlayton@...nel.org>, Amir Goldstein <amir73il@...il.com>, "Jonathan
 Cameron" <Jonathan.Cameron@...wei.com>, Stefan Hajnoczi
	<shajnocz@...hat.com>, Joanne Koong <joannelkoong@...il.com>, Josef Bacik
	<josef@...icpanda.com>, Bagas Sanjaya <bagasdotme@...il.com>, James Morse
	<james.morse@....com>, Fuad Tabba <tabba@...gle.com>, Sean Christopherson
	<seanjc@...gle.com>, Shivank Garg <shivankg@....com>, Ackerley Tng
	<ackerleytng@...gle.com>, Gregory Price <gourry@...rry.net>, Aravind Ramesh
	<arramesh@...ron.com>, Ajay Joshi <ajayjoshi@...ron.com>,
	"venkataravis@...ron.com" <venkataravis@...ron.com>,
	"linux-doc@...r.kernel.org" <linux-doc@...r.kernel.org>,
	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
	"nvdimm@...ts.linux.dev" <nvdimm@...ts.linux.dev>,
	"linux-cxl@...r.kernel.org" <linux-cxl@...r.kernel.org>,
	"linux-fsdevel@...r.kernel.org" <linux-fsdevel@...r.kernel.org>
Subject: Re: [PATCH BUNDLE v7] famfs: Fabric-Attached Memory File System

On Sun, 18 Jan 2026 22:29:18 +0000
John Groves <john@...alactic.com> wrote:

Hi John,

I wonder if these new patches sent recently have been reflected on the github repo readme files. It seems it is not, is it?

> This is a coordinated patch submission for famfs (Fabric-Attached Memory
> File System) across three repositories:
> 
>   1. Linux kernel (cover + 19 patches) - dax fsdev driver + fuse/famfs 
>      integration
>   2. libfuse (cover + 3 patches) - famfs protocol support for fuse servers
>   3. ndctl/daxctl (cover + 2 patches) - support for the new "famfs" devdax
>      mode
> 
> Each series is posted as a reply to this cover message, with individual
> patches replying to their respective series cover.
> 
> Overview
> --------
> Famfs exposes shared memory as a file system. It consumes shared memory
> from dax devices and provides memory-mappable files that map directly to
> the memory with no page cache involvement. Famfs differs from conventional
> file systems in fs-dax mode in that it handles in-memory metadata in a
> sharable way (which begins with never caching dirty shared metadata).
> 
> Famfs started as a standalone file system [1,2], but the consensus at
> LSFMM 2024 and 2025 [3,4] was that it should be ported into fuse.
> 
> The key performance requirement is that famfs must resolve mapping faults
> without upcalls. This is achieved by fully caching the file-to-devdax
> metadata for all active files via two fuse client/server message/response
> pairs: GET_FMAP and GET_DAXDEV.
> 
> Patch Series Summary
> --------------------
> 
> Linux Kernel (V7, 19 patches):
>   - dax: New fsdev driver (drivers/dax/fsdev.c) providing a devdax mode
>     compatible with fs-dax. Devices can be switched among 'devdax', 'fsdev'
>     and 'system-ram' modes via daxctl or sysfs.
>   - fuse: Famfs integration adding GET_FMAP and GET_DAXDEV messages for
>     caching file-to-dax mappings in the kernel.
> 
> libfuse (V7, 3 patches):
>   - Updates fuse_kernel.h to kernel 6.19 baseline
>   - Adds famfs DAX fmap protocol definitions
>   - Implements famfs DAX fmap support for fuse servers
> 
> ndctl/daxctl (V4, 2 patches):
>   - Adds daxctl support for the new "famfs" mode of devdax
>   - Adds test/daxctl-famfs.sh for testing mode transitions
> 
> Changes Since V2 (kernel)
> -------------------------
> - Dax: Completely new fsdev driver replaces the dev_dax_iomap modifications.
>   Uses MEMORY_DEVICE_FS_DAX type with order-0 folios for fs-dax compatibility.
> - Dax: The "poisoned page" problem is properly fixed via fsdev_clear_folio_state()
>   which clears stale mapping/compound state when fsdev binds.
> - Dax: Added dax_set_ops() and driver unbind protection while filesystem mounted.
> - Fuse: Famfs mounts require CAP_SYS_RAWIO (exposing raw memory devices).
> - Fuse: Added DAX address_space_operations with noop_dirty_folio.
> - Rebased to latest kernels, compatible with recent dax refactoring.
> 
> Testing
> -------
> The famfs user space [5] includes comprehensive smoke and unit tests that
> exercise all three components together. The ndctl series includes a
> dedicated test for famfs mode transitions.
> 
> References
> ----------
> [1] https://lore.kernel.org/linux-cxl/cover.1708709155.git.john@groves.net/
> [2] https://lore.kernel.org/linux-cxl/cover.1714409084.git.john@groves.net/
> [3] https://lwn.net/Articles/983105/ (LSFMM 2024)
> [4] https://lwn.net/Articles/1020170/ (LSFMM 2025)
> [5] https://famfs.org (famfs user space)
> [6] https://lore.kernel.org/linux-cxl/20250703185032.46568-1-john@groves.net/ (V2)
> [7] https://lore.kernel.org/linux-fsdevel/20260107153244.64703-1-john@groves.net/T/#m0000d8c00290f48c086b8b176c7525e410f8508c (related ndctl series)
> --
> John Groves
> 
> 
> 


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ