On Tue, 26 Aug 2025 14:34:45 +0200
Christian Schoenebeck <[email protected]> wrote:

> On Monday, August 25, 2025 2:53:06 PM CEST Mark Johnston wrote:
> > On Thu, Aug 21, 2025 at 01:24:04PM +0200, Christian Schoenebeck wrote:
> > > On Wednesday, August 6, 2025 7:53:08 PM CEST Mark Johnston wrote:
> [...]
> > > Not forgotten. I just hoped there were other reviewers or testers in the
> > > meantime, but be it.
> > > 
> > > Like I said, I don't have FreeBSD system here to test this, so I am taking
> > > your word for now that you tested this and plan to bring this into QEMU
> > > when master re-opens for new features soon.
> > 
> > Thank you very much!
> > 
> > In case I missed somewhat, what testing would you typically do
> > otherwise?  So far I had run the QEMU test suite (which indeed found
> > some bugs in the initial version) and tried mounting a 9pfs share from
> > Linux and FreeBSD guests and doing a bit of manual testing.
> 
> Apart from QEMU's test cases, I also use guest systems running 9p as root 
> file 
> system [1], run software compilations there among some things. That proofed 
> to 
> be quite a useful test environment to spot edge cases, concurrency and 
> performance issues and such.
> 
> [1] https://wiki.qemu.org/Documentation/9p_root_fs
> 
> Greg was running some general purpose file system stress test suite in the 
> past, but I currently can't recall what that was.
> 

Hi Christian and Mark,

I was running this in the guest :

https://github.com/pjd/pjdfstest

Cheers,

--
Greg

> > > If you have some time to adjust the commit log message above, that would
> > > be
> > > great, otherwise I can also handle this on my end later on. Looks like
> > > that
> > > comment is not adjusted for v2 yet (i.e. "user." and not mentioning
> > > "system.").
> > 
> > Here's an amended commit log message.  Please let me know if this is
> > better submitted as a v3.
> > 
> > commit b79bf1b7d42025e3e14da86a7c08d269038cd3ed
> > Author: Mark Johnston <[email protected]>
> > Date:   Wed Jul 16 20:32:05 2025 +0000
> > 
> >     9pfs: Add FreeBSD support
> > 
> >     This is largely derived from existing Darwin support.  FreeBSD
> >     apparently has better support for *at() system calls so doesn't require
> >     workarounds for a missing mknodat().  The implementation has a couple of
> > warts however:
> >     - The extattr(2) system calls don't support anything akin to
> >       XATTR_CREATE or XATTR_REPLACE, so a racy workaround is implemented.
> >     - Attribute names cannot begin with "user." or "system." on ZFS, so
> >       these prefixes are trimmed off.  FreeBSD's extattr system calls sport
> >       an extra "namespace" identifier, and attributes created by the 9pfs
> >       backend live in the universal user and system namespaces, so this
> >       seems innocent enough.
> > 
> >     The 9pfs tests were verified to pass on the UFS, ZFS and tmpfs
> >     filesystems.
> > 
> >     Signed-off-by: Mark Johnston <[email protected]>
> 
> Almost. Maybe something like this to make it a bit more clear?
> 
> - Attribute names cannot begin with "user." or "system." on ZFS. However
>   FreeBSD's extattr(2) system supports two dedicated namespaces for these
>   two. So "user." or "system." prefixes are trimmed off from attribute
>   names and instead EXTATTR_NAMESPACE_USER or EXTATTR_NAMESPACE_SYSTEM
>   are picked and passed to extattr system calls instead accordingly.
> 
> /Christian
> 
> 



-- 
Greg

Reply via email to