Re: [PATCH v2 0/5] fuse: inode IO modes and mmap

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Amir,

sorry for a bit late reply (*).

On 2/1/24 11:30, Amir Goldstein wrote:
On Thu, Feb 1, 2024 at 1:08 AM Bernd Schubert <bschubert@xxxxxxx> wrote:

This series is mostly about mmap, direct-IO and inode IO modes.
(new in this series is FOPEN_CACHE_IO).
It brings back the shared lock for FOPEN_DIRECT_IO when
FUSE_DIRECT_IO_ALLOW_MMAP is set and is also preparation
work for Amirs work on fuse-passthrough and also for

For the interested:
https://github.com/amir73il/linux/commits/fuse-backing-fd-010224/

Bernd,

Can you push this series to your v2 branch so that I can rebase
my branch on top of it?

Do you mind if I push this to a different branch to keep the branch clean?


shared lock O_DIRECT and direct-IO code consolidation I have
patches for.

Patch 1/5 was already posted before
https://patchwork.kernel.org/project/linux-fsdevel/patch/20231213150703.6262-1-bschubert@xxxxxxx/
but is included here again, as especially patch 5/5 has a
dependency on it. Amir has also spotted a typo in the commit message
of the initial patch, which is corrected here.

Patches 2/5 and 3/5 add helper functions, which are needed by the
main patch (5/5) in this series and are be also needed by another
fuse direct-IO series. That series needs the helper functions in
fuse_cache_write_iter, thus, these new helpers are above that
function.

Patch 4/5 allows to fail fuse_finish_open and is a preparation
to handle conflicting IO modes from the server side and will also be
needed for fuse passthrough.

Patch 5/5 is the main patch in the series, which adds inode
IO modes, which is needed to re-enable shared DIO writes locks
when FUSE_DIRECT_IO_ALLOW_MMAP is set. Furthermore, these IO modes
are also needed by Amirs WIP fuse passthrough work.

The conflict of FUSE_DIRECT_IO_ALLOW_MMAP and
FOPEN_PARALLEL_DIRECT_WRITES was detected by xfstest generic/095.
This patch series was tested by running a loop of that test
and also by multiple runs of the complete xfstest suite.
For testing with libfuse a version is needed that includes this
pull request
https://github.com/libfuse/libfuse/pull/870

Heh, this is already merged :)

Yeah, just not in any libfuse release yet. Btw, for some reasons I need to comment out "_require_aio" in tests/generic/095 to get the test to do something, I need to investigate why.


For the record, I understand that you ran this test with passthrough_hp.
In which configurations --direct-io? --nocache? only default?

I always test with both, which is why testing takes a bit time with all tests. Also both modes for generic/095, but that one with an additional loop (10 iterations), as in loop mode it found some issues in the initial patches. For the --direct-io I actually need a slight patch to get that passed through from local.config to passthrough_hp via /sbin/mount.fuse.passthrough. Will submit that to libfuse later on.


Thanks for pushing this through!

Well, thanks a lot for all of your work on it!



Cheers,
Bernd



PS (*): _Another_ broken bicycle in the middle of way to the office.... Half of the spokes of my rear wheel broke, out of the nowhere.




[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux