Page MenuHomeFreeBSD

emil_etsalapatis.com (Emil Tsalapatis)
User

Projects

User does not belong to any projects.

User Details

User Since
May 16 2024, 6:38 PM (94 w, 5 d)

Recent Activity

Wed, Feb 11

emil_etsalapatis.com added a comment to D55047: fuse: Do not unconditionally overwrite local vnode size with remote.

This looks like a real problem. But how did you find it? Was it just virtio-fs, or did you find it with a regular fuse file system too? If either case, do you know if FUSE_ASYNC_READ was set? And do you know what values are typically used for the entry and attribute cache?

Wed, Feb 11, 3:40 AM

Feb 2 2026

emil_etsalapatis.com added a comment to D55047: fuse: Do not unconditionally overwrite local vnode size with remote.

Thank you! For context, this diff along with the elock issue we discussed on D55046 are the main blockers for getting virtiofs working (D46295 + D46296). This issue from this diff specifically causes constant truncations when using metadata caching from the virtiofs (and assume FUSE) server. This looks like corruption from a user's point of view. I actually think that it'd be better if we removed the warnings altogether because they trigger spuriously and so are not helpful as diagnostics.

Feb 2 2026, 3:50 AM
emil_etsalapatis.com abandoned D55046: fuse: Ensure fuse_internal_cache_attrs() is called with exclusive lock.

Thanks for working on this! I was actually working on the exact same problem myself last week. And I came up with a very similar solution. But then I realized that it wouldn't work :( . The cached attrs also need to be modified in paths where the vnode lock cannot be upgraded. So my plan is to add a mutex just to protect them. I started work on it last week. But now I'm on vacation, so I can't resume work for a few more days. But thanks for your interest in fuse.

Feb 2 2026, 3:41 AM
emil_etsalapatis.com added a reviewer for D55047: fuse: Do not unconditionally overwrite local vnode size with remote: asomers.
Feb 2 2026, 12:25 AM
emil_etsalapatis.com requested review of D55047: fuse: Do not unconditionally overwrite local vnode size with remote.
Feb 2 2026, 12:25 AM
emil_etsalapatis.com requested review of D55046: fuse: Ensure fuse_internal_cache_attrs() is called with exclusive lock.
Feb 2 2026, 12:22 AM
emil_etsalapatis.com updated the diff for D46296: add virtiofs kernel module.

fix copy-paste job for SPDX License

Feb 2 2026, 12:06 AM
emil_etsalapatis.com updated the diff for D46295: add virtio file system device support.

adjust SPDX License Identifier

Feb 2 2026, 12:04 AM
emil_etsalapatis.com updated the diff for D46296: add virtiofs kernel module.

upload actual diff (previous update accidentally added different diff)

Feb 2 2026, 12:00 AM

Feb 1 2026

emil_etsalapatis.com updated the diff for D46296: add virtiofs kernel module.

adjust ms queue usage, ticket response, and error handling/style bugfixes

Feb 1 2026, 11:59 PM
emil_etsalapatis.com updated the diff for D46295: add virtio file system device support.

bug fixes and style updates

Feb 1 2026, 11:56 PM

May 30 2025

emil_etsalapatis.com updated the diff for D46295: add virtio file system device support.
  • sys/dev/virtio/fs: use regular BSD-2-Clause license
May 30 2025, 4:34 AM
emil_etsalapatis.com updated the diff for D46296: add virtiofs kernel module.
  • sys/fs/fuse: disallow FUSE_INTERRUPT for virtiofs
May 30 2025, 4:28 AM
emil_etsalapatis.com updated the diff for D46296: add virtiofs kernel module.
  • virtiofs: rename 'tag' VFS option to 'from'
  • fs/fuse/virtiofs: adjust FUSE flags and disallow fsync
May 30 2025, 2:29 AM
emil_etsalapatis.com updated the diff for D46295: add virtio file system device support.
  • sys/dev/virtio/fs: drain virtqueues one at a time
May 30 2025, 2:26 AM

Feb 27 2025

emil_etsalapatis.com updated the diff for D46296: add virtiofs kernel module.
  • virtiofs: turn off FUSE_DESTROY for virtiofs
Feb 27 2025, 4:06 AM

Jan 13 2025

emil_etsalapatis.com planned changes to D46296: add virtiofs kernel module.

There are two outstanding bugs that need fixing before this can be merged:

Jan 13 2025, 4:44 AM
emil_etsalapatis.com updated the diff for D46296: add virtiofs kernel module.
  • virtiofs: rename 'tag' VFS option to 'from'
  • address feedback
Jan 13 2025, 4:41 AM
emil_etsalapatis.com abandoned D46297: add virtiofs mount utility.

Unnecessary since the generic mount utility can mount/unmount virtiofs.

Jan 13 2025, 4:13 AM
emil_etsalapatis.com updated the diff for D46295: add virtio file system device support.

address reviewer feedback

Jan 13 2025, 1:16 AM

Jan 4 2025

emil_etsalapatis.com added a comment to D46296: add virtiofs kernel module.

Could someone provide some simple scripts for bringing up and testing a share?

Jan 4 2025, 4:11 AM

Sep 5 2024

emil_etsalapatis.com added a comment to D46296: add virtiofs kernel module.

A couple more notes from testing:

There's some other place where FUSE layer can pick up zero-padded-to-power-of-two things, now with 1024 instead of 4096:

WARNING: FUSE protocol violation for server mounted at /: Returned an embedded NUL from FUSE_READLINK.  This warning will not be repeated.
Len 1024
0000   62 61 73 68 00 00 00 00 00 00 00 00 00 00 00 00  |bash............|
0010   00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  |................|
…

And trying to just find something in a src tree checkout, there are sporadic errors like

find: ./contrib/llvm-project/llvm/lib/DebugInfo/Symbolize: Bad file descriptor
find: ./sys/dev/qat/qat_hw: Invalid argument
find: ./sys/dev/qat/qat_api/common/stubs: Invalid argument
// etc…

that seem completely random, on one invocation there are none, on another there's a couple…

Sep 5 2024, 3:06 PM

Sep 2 2024

emil_etsalapatis.com added a comment to D46297: add virtiofs mount utility.

Can you add a man page, too?

Sep 2 2024, 4:00 PM
emil_etsalapatis.com added a comment to D46296: add virtiofs kernel module.

Thanks for the feedback! I will update the diff accordingly.

Sep 2 2024, 3:51 PM

Aug 14 2024

emil_etsalapatis.com requested review of D46297: add virtiofs mount utility.
Aug 14 2024, 3:56 PM
emil_etsalapatis.com requested review of D46296: add virtiofs kernel module.
Aug 14 2024, 3:55 PM
emil_etsalapatis.com requested review of D46295: add virtio file system device support.
Aug 14 2024, 3:53 PM

Jun 6 2024

emil_etsalapatis.com planned changes to D45370: add virtio single-machine testing framework.
Jun 6 2024, 9:27 PM
emil_etsalapatis.com added a comment to D45370: add virtio single-machine testing framework.

Will do, I have been building it as part of the kernel so that's probably why it didn't need a definition in sys/modules. I have been running this manually.

I've been thinking on how to get this code to be more reviewable. Should I maybe try to get it published as a port instead of submitting it as a patch to src/? Most of this code is self-contained, and its size means it will be next to impossible to review in its current state. If we go down the port route, only changes we would be applying to src/ would be non-functional - most would be about turning some static functions global.

Alternatively, I can break this diff apart, get the virtio-dbg transport reviewed since it is more reasonably sized, and either spin off the userspace device emulation component as a port or introduce it later. Which do you think is more reasonable?

Splitting it apart sounds good. Especially if there's some way to exercise the virtio-dbg transport without the userspace device emulation. Then splitting it apart would be a very good idea.

Jun 6 2024, 9:27 PM
emil_etsalapatis.com added a comment to D45370: add virtio single-machine testing framework.

I think you need to add a definition for the virtio_dbg module in sys/modules. Oh, and how do you use it? Eventually we want ATF tests, of course. But I assume for now you've been manually using it somehow?

Jun 6 2024, 8:53 PM

May 26 2024

emil_etsalapatis.com requested review of D45370: add virtio single-machine testing framework.
May 26 2024, 4:24 PM