From: Jonathan Cameron <jonathan.cameron@huawei.com>
To: John Groves <John@Groves.net>
Cc: Miklos Szeredi <miklos@szeredi.hu>,
Dan Williams <dan.j.williams@intel.com>,
Bernd Schubert <bschubert@ddn.com>,
"Alison Schofield" <alison.schofield@intel.com>,
John Groves <jgroves@micron.com>,
Jonathan Corbet <corbet@lwn.net>,
Vishal Verma <vishal.l.verma@intel.com>,
Dave Jiang <dave.jiang@intel.com>,
Matthew Wilcox <willy@infradead.org>, Jan Kara <jack@suse.cz>,
Alexander Viro <viro@zeniv.linux.org.uk>,
"David Hildenbrand" <david@kernel.org>,
Christian Brauner <brauner@kernel.org>,
"Darrick J . Wong" <djwong@kernel.org>,
Randy Dunlap <rdunlap@infradead.org>,
Jeff Layton <jlayton@kernel.org>,
Amir Goldstein <amir73il@gmail.com>,
Stefan Hajnoczi <shajnocz@redhat.com>,
Joanne Koong <joannelkoong@gmail.com>,
Josef Bacik <josef@toxicpanda.com>,
Bagas Sanjaya <bagasdotme@gmail.com>,
Chen Linxuan <chenlinxuan@uniontech.com>,
"James Morse" <james.morse@arm.com>,
Fuad Tabba <tabba@google.com>,
"Sean Christopherson" <seanjc@google.com>,
Shivank Garg <shivankg@amd.com>,
Ackerley Tng <ackerleytng@google.com>,
Gregory Price <gourry@gourry.net>,
Aravind Ramesh <arramesh@micron.com>,
Ajay Joshi <ajayjoshi@micron.com>, <venkataravis@micron.com>,
<linux-doc@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
<nvdimm@lists.linux.dev>, <linux-cxl@vger.kernel.org>,
<linux-fsdevel@vger.kernel.org>
Subject: Re: [PATCH V3 4/4] fuse: add famfs DAX fmap support
Date: Thu, 8 Jan 2026 15:31:48 +0000 [thread overview]
Message-ID: <20260108153148.00001e63@huawei.com> (raw)
In-Reply-To: <20260107153443.64794-5-john@groves.net>
On Wed, 7 Jan 2026 09:34:43 -0600
John Groves <John@Groves.net> wrote:
> Add new FUSE operations and capability for famfs DAX file mapping:
>
> - FUSE_CAP_DAX_FMAP: New capability flag at bit 32 (using want_ext/capable_ext
> fields) to indicate kernel and userspace support for DAX fmaps
>
> - GET_FMAP: New operation to retrieve a file map for DAX-mapped files.
> Returns a fuse_famfs_fmap_header followed by simple or interleaved
> extent descriptors. The kernel passes the file size as an argument.
>
> - GET_DAXDEV: New operation to retrieve DAX device info by index.
> Called when GET_FMAP returns an fmap referencing a previously
> unknown DAX device.
>
> These operations enable FUSE filesystems to provide direct access
> mappings to persistent memory, allowing the kernel to map files
> directly to DAX devices without page cache intermediation.
>
> Signed-off-by: John Groves <john@groves.net>
> ---
> include/fuse_common.h | 5 +++++
> include/fuse_lowlevel.h | 37 +++++++++++++++++++++++++++++++++++++
> lib/fuse_lowlevel.c | 31 ++++++++++++++++++++++++++++++-
> 3 files changed, 72 insertions(+), 1 deletion(-)
>
> diff --git a/include/fuse_common.h b/include/fuse_common.h
> index 041188e..e428ddb 100644
> --- a/include/fuse_common.h
> +++ b/include/fuse_common.h
> @@ -512,6 +512,11 @@ struct fuse_loop_config_v1 {
> */
> #define FUSE_CAP_OVER_IO_URING (1UL << 31)
>
> +/**
> + * handle files that use famfs dax fmaps
> + */
> +#define FUSE_CAP_DAX_FMAP (1UL<<32)
From the context above, looks like local style is spaces around <<
That's about the level of my understanding of the fuse code ;)
> +
> /**
> * Ioctl flags
> *
next prev parent reply other threads:[~2026-01-08 15:31 UTC|newest]
Thread overview: 77+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-07 15:32 [PATCH BUNDLE] famfs: Fabric-Attached Memory File System John Groves
2026-01-07 15:33 ` [PATCH V3 00/21] famfs: port into fuse John Groves
2026-01-07 15:33 ` [PATCH V3 01/21] dax: move dax_pgoff_to_phys from [drivers/dax/] device.c to bus.c John Groves
2026-01-08 10:43 ` Jonathan Cameron
2026-01-08 13:25 ` John Groves
2026-01-08 15:20 ` Jonathan Cameron
2026-01-07 15:33 ` [PATCH V3 02/21] dax: add fsdev.c driver for fs-dax on character dax John Groves
2026-01-08 11:31 ` Jonathan Cameron
2026-01-08 14:32 ` John Groves
2026-01-08 15:12 ` John Groves
2026-01-08 21:15 ` John Groves
2026-01-08 23:25 ` Gregory Price
2026-01-07 15:33 ` [PATCH V3 03/21] dax: Save the kva from memremap John Groves
2026-01-08 11:32 ` Jonathan Cameron
2026-01-08 15:15 ` John Groves
2026-01-07 15:33 ` [PATCH V3 04/21] dax: Add dax_operations for use by fs-dax on fsdev dax John Groves
2026-01-08 11:50 ` Jonathan Cameron
2026-01-08 15:59 ` John Groves
2026-01-08 16:10 ` Jonathan Cameron
2026-01-08 17:55 ` kernel test robot
2026-01-07 15:33 ` [PATCH V3 05/21] dax: Add dax_set_ops() for setting dax_operations at bind time John Groves
2026-01-08 12:06 ` Jonathan Cameron
2026-01-08 16:20 ` John Groves
2026-01-07 15:33 ` [PATCH V3 06/21] dax: Add fs_dax_get() func to prepare dax for fs-dax usage John Groves
2026-01-08 12:27 ` Jonathan Cameron
2026-01-08 16:45 ` John Groves
2026-01-07 15:33 ` [PATCH V3 07/21] dax: prevent driver unbind while filesystem holds device John Groves
2026-01-08 12:34 ` Jonathan Cameron
2026-01-08 18:08 ` John Groves
2026-01-12 18:55 ` John Groves
2026-01-07 15:33 ` [PATCH V3 08/21] dax: export dax_dev_get() John Groves
2026-01-07 15:33 ` [PATCH V3 09/21] famfs_fuse: magic.h: Add famfs magic numbers John Groves
2026-01-07 15:33 ` [PATCH V3 10/21] famfs_fuse: Kconfig John Groves
2026-01-08 12:36 ` Jonathan Cameron
2026-01-12 16:46 ` John Groves
2026-01-07 15:33 ` [PATCH V3 11/21] famfs_fuse: Update macro s/FUSE_IS_DAX/FUSE_IS_VIRTIO_DAX/ John Groves
2026-01-09 18:16 ` Joanne Koong
2026-01-09 22:15 ` [PATCH V3 11/21] famfs_fuse: Update macro s/FUSE_IS_DAX/FUSE_IS_VIRTIO_DAX John Groves
2026-01-07 15:33 ` [PATCH V3 12/21] famfs_fuse: Basic fuse kernel ABI enablement for famfs John Groves
2026-01-09 18:29 ` Joanne Koong
2026-01-09 22:58 ` John Groves
2026-01-07 15:33 ` [PATCH V3 13/21] famfs_fuse: Famfs mount opt: -o shadow=<shadowpath> John Groves
2026-01-09 19:22 ` Joanne Koong
2026-01-10 0:38 ` John Groves
2026-01-11 18:20 ` John Groves
2026-01-07 15:33 ` [PATCH V3 14/21] famfs_fuse: Plumb the GET_FMAP message/response John Groves
2026-01-08 12:49 ` Jonathan Cameron
2026-01-09 2:12 ` John Groves
2026-01-07 15:33 ` [PATCH V3 15/21] famfs_fuse: Create files with famfs fmaps John Groves
2026-01-07 21:30 ` John Groves
2026-01-08 13:14 ` Jonathan Cameron
2026-01-09 14:30 ` John Groves
2026-01-08 19:27 ` kernel test robot
2026-01-07 15:33 ` [PATCH V3 16/21] famfs_fuse: GET_DAXDEV message and daxdev_table John Groves
2026-01-08 14:45 ` Jonathan Cameron
2026-01-08 21:04 ` kernel test robot
2026-01-07 15:33 ` [PATCH V3 17/21] famfs_fuse: Plumb dax iomap and fuse read/write/mmap John Groves
2026-01-08 15:13 ` Jonathan Cameron
2026-01-09 17:44 ` John Groves
2026-01-07 15:33 ` [PATCH V3 18/21] famfs_fuse: Add holder_operations for dax notify_failure() John Groves
2026-01-08 15:17 ` Jonathan Cameron
2026-01-09 21:00 ` John Groves
2026-01-07 15:33 ` [PATCH V3 19/21] famfs_fuse: Add DAX address_space_operations with noop_dirty_folio John Groves
2026-01-07 15:33 ` [PATCH V3 20/21] famfs_fuse: Add famfs fmap metadata documentation John Groves
2026-01-07 15:33 ` [PATCH V3 21/21] famfs_fuse: Add documentation John Groves
2026-01-08 15:27 ` Jonathan Cameron
2026-01-11 18:53 ` John Groves
2026-01-07 15:34 ` [PATCH V3 0/4] libfuse: add basic famfs support to libfuse John Groves
2026-01-07 15:34 ` [PATCH V3 1/4] fuse_kernel.h: bring up to baseline 6.19 John Groves
2026-01-07 15:34 ` [PATCH V3 2/4] fuse_kernel.h: add famfs DAX fmap protocol definitions John Groves
2026-01-07 15:34 ` [PATCH V3 3/4] fuse: add API to set kernel mount options John Groves
2026-01-07 15:34 ` [PATCH V3 4/4] fuse: add famfs DAX fmap support John Groves
2026-01-08 15:31 ` Jonathan Cameron [this message]
2026-01-11 18:24 ` John Groves
2026-01-07 15:34 ` [PATCH 0/2] ndctl: Add daxctl support for the new "famfs" mode of devdax John Groves
2026-01-07 15:34 ` [PATCH 1/2] daxctl: Add support for famfs mode John Groves
2026-01-07 15:34 ` [PATCH 2/2] Add test/daxctl-famfs.sh to test famfs mode transitions: John Groves
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260108153148.00001e63@huawei.com \
--to=jonathan.cameron@huawei.com \
--cc=John@Groves.net \
--cc=ackerleytng@google.com \
--cc=ajayjoshi@micron.com \
--cc=alison.schofield@intel.com \
--cc=amir73il@gmail.com \
--cc=arramesh@micron.com \
--cc=bagasdotme@gmail.com \
--cc=brauner@kernel.org \
--cc=bschubert@ddn.com \
--cc=chenlinxuan@uniontech.com \
--cc=corbet@lwn.net \
--cc=dan.j.williams@intel.com \
--cc=dave.jiang@intel.com \
--cc=david@kernel.org \
--cc=djwong@kernel.org \
--cc=gourry@gourry.net \
--cc=jack@suse.cz \
--cc=james.morse@arm.com \
--cc=jgroves@micron.com \
--cc=jlayton@kernel.org \
--cc=joannelkoong@gmail.com \
--cc=josef@toxicpanda.com \
--cc=linux-cxl@vger.kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=miklos@szeredi.hu \
--cc=nvdimm@lists.linux.dev \
--cc=rdunlap@infradead.org \
--cc=seanjc@google.com \
--cc=shajnocz@redhat.com \
--cc=shivankg@amd.com \
--cc=tabba@google.com \
--cc=venkataravis@micron.com \
--cc=viro@zeniv.linux.org.uk \
--cc=vishal.l.verma@intel.com \
--cc=willy@infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.