Page MenuHomeFreeBSD

asomers (Alan Somers)
User

Projects

User Details

User Since
May 9 2014, 11:04 PM (596 w, 1 d)

Recent Activity

Wed, Oct 8

asomers added a comment to D52984: sockstat: improve output formatting.

Could you please give an example of the before and after output?

Wed, Oct 8, 8:42 PM
asomers added a comment to D52986: sockstat: show path state column only when useful.

Could you give an example of what the output looks like before and after?

Wed, Oct 8, 8:40 PM

Tue, Oct 7

asomers accepted D52914: tests/sys/aio: Fix vectored_big_iovcnt flaky test failure.
Tue, Oct 7, 8:14 PM
asomers added a comment to D52914: tests/sys/aio: Fix vectored_big_iovcnt flaky test failure.

The MD_LEN variable is now badly named. I think it's ok to leave its value the same. Most test cases don't require 1 MB of I/O. But you should at least change that name.

So, let’s use DEVICE_IO_LEN then (to clarifies that this constant represents the I/O buffer length used for device tests (16 KB), not the size of the MD device itself which is now 1 MB) ?

Tue, Oct 7, 4:32 PM
asomers requested changes to D52914: tests/sys/aio: Fix vectored_big_iovcnt flaky test failure.

The MD_LEN variable is now badly named. I think it's ok to leave its value the same. Most test cases don't require 1 MB of I/O. But you should at least change that name.

Tue, Oct 7, 3:51 PM

Mon, Oct 6

asomers committed R11:e5c192c3ba45: sysutils/jail_exporter: 0.18.0 (authored by asomers).
sysutils/jail_exporter: 0.18.0
Mon, Oct 6, 5:29 PM

Sun, Oct 5

asomers requested changes to D52914: tests/sys/aio: Fix vectored_big_iovcnt flaky test failure.
Sun, Oct 5, 5:39 PM

Fri, Oct 3

asomers added a comment to D51549: fusefs: Support for the auto_unmount FUSE option.

After seeing this code in practice it seems quite complicated. I do think that the kernel based approach would be simpler. But an important question is: what file systems already use this option on Linux? How many of them would work with either this implementation, or the hypothetical kernel-based one?

Fri, Oct 3, 3:00 PM

Thu, Oct 2

asomers accepted D45893: bitstring_test: fix bit_nclear/bit_nset tests for last iteration.
Thu, Oct 2, 1:47 PM

Wed, Oct 1

asomers added a comment to D45893: bitstring_test: fix bit_nclear/bit_nset tests for last iteration.

So is -1 being cast to true? Thank you GCC for telling us that. If so, I think we should replace ATF_REQUIRE_MSG with ATF_REQUIRE_EQ_MSG. I think that would be more clear.

Wed, Oct 1, 11:08 PM
asomers added a comment to D45893: bitstring_test: fix bit_nclear/bit_nset tests for last iteration.

What's the problem? Under what conditions is the current code incorrect?

Wed, Oct 1, 10:14 PM

Sat, Sep 27

asomers committed rG3152a2f5dd04: fusefs: fix a kernel panic regarding SCM_RIGHTS (authored by asomers).
fusefs: fix a kernel panic regarding SCM_RIGHTS
Sat, Sep 27, 2:36 PM
asomers committed rG7dc691b70353: fusefs: fix the last_local_modify LLM/LastLocalModify.lookup/3 test (authored by asomers).
fusefs: fix the last_local_modify LLM/LastLocalModify.lookup/3 test
Sat, Sep 27, 2:36 PM
asomers committed rGa16c01f71fd5: fusefs: don't fake the mountpoint's stat info before FUSE_INIT completes (authored by asomers).
fusefs: don't fake the mountpoint's stat info before FUSE_INIT completes
Sat, Sep 27, 2:36 PM
asomers committed rG4171bf5905a9: zfsd: don't try to fix an OFFLINE condition (authored by asomers).
zfsd: don't try to fix an OFFLINE condition
Sat, Sep 27, 2:28 PM
asomers committed rG872d4fb51ef4: ctladm: skip the tests if ctladm is missing (authored by olivier).
ctladm: skip the tests if ctladm is missing
Sat, Sep 27, 2:26 PM
asomers committed rG3c69315911ba: mac_bsdextended: report that all tests require the kernel module (authored by asomers).
mac_bsdextended: report that all tests require the kernel module
Sat, Sep 27, 2:26 PM
asomers committed rGe1deeea6c173: ctladm: Use require.kmods for cfiscsi (authored by asomers).
ctladm: Use require.kmods for cfiscsi
Sat, Sep 27, 2:26 PM
asomers committed rGe39e892969cb: ctl: delete dead code in the tests (authored by asomers).
ctl: delete dead code in the tests
Sat, Sep 27, 2:26 PM
asomers committed rG931274f70d08: fusefs: report that all tests require the fusefs kernel module (authored by asomers).
fusefs: report that all tests require the fusefs kernel module
Sat, Sep 27, 2:20 PM
asomers committed rG8b66d677a99b: ctl: add ATF tests for SCSI PERSISTENT RESERVE IN/OUT (authored by asomers).
ctl: add ATF tests for SCSI PERSISTENT RESERVE IN/OUT
Sat, Sep 27, 1:54 PM

Fri, Sep 26

asomers committed rG5206983e76c0: fusefs: fix a kernel panic regarding SCM_RIGHTS (authored by asomers).
fusefs: fix a kernel panic regarding SCM_RIGHTS
Fri, Sep 26, 6:27 PM

Thu, Sep 25

asomers committed rG3289d3831718: fusefs: fix the last_local_modify LLM/LastLocalModify.lookup/3 test (authored by asomers).
fusefs: fix the last_local_modify LLM/LastLocalModify.lookup/3 test
Thu, Sep 25, 10:39 PM

Wed, Sep 24

asomers committed R11:7112661185f5: filesystems/xfuse: 0.5.1 (authored by asomers).
filesystems/xfuse: 0.5.1
Wed, Sep 24, 2:28 PM

Sat, Sep 20

asomers added a comment to D51549: fusefs: Support for the auto_unmount FUSE option.

I have a few thoughts:

Sat, Sep 20, 12:38 AM

Fri, Sep 19

asomers committed rGe043af9ca596: fusefs: fix a kernel panic regarding SCM_RIGHTS (authored by asomers).
fusefs: fix a kernel panic regarding SCM_RIGHTS
Fri, Sep 19, 10:39 PM
asomers closed D52625: fusefs: fix a kernel panic regarding SCM_RIGHTS.
Fri, Sep 19, 10:39 PM
asomers added a comment to D52625: fusefs: fix a kernel panic regarding SCM_RIGHTS.

I'm sure this will fix the panic, but I can't easily see if it's correct. For instance, if the unix domain socket code does asynchronous fd reclamation using unp_gc_task, the current thread will be some taskqueue thread. Its PID will probably be zero (but this is an implementation detail). I see some special handling for PID 0 e.g. in fuse_filehandle_get_anyflags(). Will this work the way you want in that case?

Fri, Sep 19, 8:42 PM
asomers committed rG27331c63bc80: sockstat: fix the -j option with piped output after libxo integration (authored by asomers).
sockstat: fix the -j option with piped output after libxo integration
Fri, Sep 19, 7:44 PM
asomers updated the diff for D52625: fusefs: fix a kernel panic regarding SCM_RIGHTS.
  • Also add a test case for writes to a file that lies in a sockbuf
Fri, Sep 19, 6:11 PM
asomers requested review of D52625: fusefs: fix a kernel panic regarding SCM_RIGHTS.
Fri, Sep 19, 5:04 PM

Mon, Sep 15

asomers committed rG2918cf358291: fusefs: spaces to tabs. No functional change. (authored by asomers).
fusefs: spaces to tabs. No functional change.
Mon, Sep 15, 12:33 AM
asomers committed rGd1eaa52d10f9: fusefs: fix the last_local_modify LLM/LastLocalModify.lookup/3 test (authored by asomers).
fusefs: fix the last_local_modify LLM/LastLocalModify.lookup/3 test
Mon, Sep 15, 12:32 AM

Fri, Sep 12

asomers committed R11:92709b8ef6ce: shells/fish: 4.0.6 (authored by asomers).
shells/fish: 4.0.6
Fri, Sep 12, 9:13 PM

Sep 9 2025

asomers committed rG9bfbc6826f72: sockstat: fix the -j option with piped output after libxo integration (authored by asomers).
sockstat: fix the -j option with piped output after libxo integration
Sep 9 2025, 4:46 PM

Sep 7 2025

asomers added a comment to D52255: fuse: Fix GID when sending FUSE_INTERRUPT to a FUSE daemon.

What bug exactly does this "fix"? Did you encounter a bug in your work, or did you just discover this problem by inspection? If the former, we should add a test case to tests/sys/fs/fusefs.

Sep 7 2025, 5:52 PM

Aug 29 2025

asomers added a comment to D50826: fusefs: change how poll() on /dev/fuse works on unmount.

Is this going to be landed?

Aug 29 2025, 4:01 PM

Aug 21 2025

asomers added a comment to D51254: vfs_cluster.c: Do not propagate VOP_BMAP errors to the caller.

@arrowd I agree with your change. The only thing I wanted different is a more detailed commit message. Of course, Mark might disagree.

Aug 21 2025, 7:54 PM

Aug 12 2025

asomers committed rGd88831779619: sockstat: fix port parsing after libxo integration (authored by asomers).
sockstat: fix port parsing after libxo integration
Aug 12 2025, 4:41 PM
asomers committed rGec92e61f99f6: sockstat: rename sockstat.c to main.c (authored by asomers).
sockstat: rename sockstat.c to main.c
Aug 12 2025, 4:41 PM
asomers committed rG61e404271ab8: sockstat: complete libxo integration and improve formatting (authored by Damin Rido <rido@freebsd.org>).
sockstat: complete libxo integration and improve formatting
Aug 12 2025, 3:15 PM

Aug 8 2025

asomers committed rG950a251823e7: sockstat: revert incorrect use of path-state for SCTP connections (authored by Damin Rido <rido@freebsd.org>).
sockstat: revert incorrect use of path-state for SCTP connections
Aug 8 2025, 4:20 PM

Aug 7 2025

asomers accepted D51808: vfs: Add support for file cloning to VOP_COPY_FILE_RANGE.

Ok. I'm sure that you'll get the NFS client part done. The rest of it looks fine to me.

Aug 7 2025, 10:03 PM
asomers added a comment to D51808: vfs: Add support for file cloning to VOP_COPY_FILE_RANGE.

Here's a stupid question. Is it possible for nfsd to reexport an NFS mountpoint? If so, then nfs_copy_file_range will need to check the flag, too.

Not a stupid question. Linux allows this and they have endless bugs to deal
with because of it. FreeBSD does not and I hope to keep it that way.

Aug 7 2025, 9:38 PM
asomers added a comment to D51808: vfs: Add support for file cloning to VOP_COPY_FILE_RANGE.

Here's a stupid question. Is it possible for nfsd to reexport an NFS mountpoint? If so, then nfs_copy_file_range will need to check the flag, too.

Aug 7 2025, 9:21 PM
asomers requested changes to D51808: vfs: Add support for file cloning to VOP_COPY_FILE_RANGE.

Shouldn't there also be some ZFS code that returns ENOSYS if the cloning requirement cannot be satisfied? And fuse_vnop_copy_file_range cannot ever satisfy that requirement, so it should return ENOSYS just like in vn_generic_copy_file_range

Aug 7 2025, 9:16 PM
asomers added a comment to D51782: ctld: kernel-sourced portal groups are not dummies.

Instead of this, I think a better solution would be for ctld to ignore EEXIST errors. That would not only fix your situation, but would also go some way towards recovering from a ctld that crashed (currently, if ctld crashes the only way to recover is to reboot or to manually remove every target with ctladm). The port::kernel_add() method would need to be be adjusted to return an errno, of course. But the ioctls already do. I'm not sure what error code they currently return; that might need to be adjusted.

I had considered that, but this dummy check wasn't clear: https://cgit.freebsd.org/src/tree/usr.sbin/ctld/ctld.cc#n2038 -> this loop effectively does nothing at startup because all kernel ports are dummies. If the intention was to allow them to persist under the assumption they're being managed elsewhere, it seems like we should also have some mechanism to avoid destroying pre-existing LUNs from the kernel in the next loop -> thus I arrive at maybe they *should* be removed as well.

I'm more than happy to fix this to however people (like you) that actively work on ctld see fit, though.

I note that this seems to revert us to pre https://cgit.freebsd.org/src/commit/usr.sbin/ctld/ctld.c?h=stable/14&id=9215e501b9e7d3f425677ffd1d3f1542c9fbb4dc behavior

Aug 7 2025, 7:29 PM
asomers added a comment to D51782: ctld: kernel-sourced portal groups are not dummies.

Instead of this, I think a better solution would be for ctld to ignore EEXIST errors. That would not only fix your situation, but would also go some way towards recovering from a ctld that crashed (currently, if ctld crashes the only way to recover is to reboot or to manually remove every target with ctladm). The port::kernel_add() method would need to be be adjusted to return an errno, of course. But the ioctls already do. I'm not sure what error code they currently return; that might need to be adjusted.

Aug 7 2025, 6:47 PM
asomers added a comment to D51782: ctld: kernel-sourced portal groups are not dummies.

Is there a way to reproduce this bug using unpatched FreeBSD?

Aug 7 2025, 5:17 PM

Aug 6 2025

asomers committed R11:5f9aa574da6a: filesystems/zrepl: fix 500.zrepl periodic job with multiple certs (authored by asomers).
filesystems/zrepl: fix 500.zrepl periodic job with multiple certs
Aug 6 2025, 1:47 PM

Aug 5 2025

asomers committed rG9e682c426093: fusefs: don't fake the mountpoint's stat info before FUSE_INIT completes (authored by asomers).
fusefs: don't fake the mountpoint's stat info before FUSE_INIT completes
Aug 5 2025, 10:54 PM
asomers closed D50800: fusefs: don't fake the mountpoint's stat info before FUSE_INIT completes.
Aug 5 2025, 10:53 PM
asomers accepted D51729: ctld: Use freebsd::fd_up to manage the lifecycle of accepted sockets.
Aug 5 2025, 2:38 PM

Aug 4 2025

asomers added inline comments to D48772: ctld: Add abstractions to support multiple target protocols.
Aug 4 2025, 11:17 PM
asomers committed rGa13ddd6210f3: zfsd: don't try to fix an OFFLINE condition (authored by asomers).
zfsd: don't try to fix an OFFLINE condition
Aug 4 2025, 6:37 PM

Aug 3 2025

asomers added a comment to D51371: tests: Add basic function tests for NFS.
In D51371#1181088, @des wrote:

You don't need to create a thick jail. In fact, you don't need a separate jail file system at all. It's totally fine to create a jail anchored at / .

No, it is absolutely not fine. Both jails run daemons which create pidfiles and sockets in hardcoded locations.

Aug 3 2025, 2:11 AM

Aug 2 2025

asomers added a comment to D51371: tests: Add basic function tests for NFS.
In D51371#1173192, @des wrote:

I would be delighted if someone could suggest a better way to populate a thick(ish) jail than what I'm doing here, btw. The jails weigh in at around 200 MB each on amd64.

Aug 2 2025, 10:13 PM

Jul 30 2025

asomers committed rG7b35b4d19630: sockstat: add libxo support (authored by Damin Rido <rido@freebsd.org>).
sockstat: add libxo support
Jul 30 2025, 8:28 PM

Jul 23 2025

asomers committed rGf0a7a1bda375: fstat: identify kqueue, mqueue, and procdesc file descriptors (authored by asomers).
fstat: identify kqueue, mqueue, and procdesc file descriptors
Jul 23 2025, 11:32 PM
asomers committed rG6f433f2b4f37: fusefs: fix a panic in vop_close with a CTL consumer (authored by asomers).
fusefs: fix a panic in vop_close with a CTL consumer
Jul 23 2025, 11:30 PM
asomers committed rG34a893a0ab10: fusefs: Fix a panic when unmounting before init (authored by asomers).
fusefs: Fix a panic when unmounting before init
Jul 23 2025, 11:30 PM
asomers committed rG5a8d8ffd7c8d: fusefs: add more checks for buggy FUSE servers (authored by asomers).
fusefs: add more checks for buggy FUSE servers
Jul 23 2025, 11:30 PM
asomers committed rG0a0d323157cb: fusefs: delete dead code (authored by asomers).
fusefs: delete dead code
Jul 23 2025, 10:59 PM
asomers committed rG0432511d3ff6: fusefs: correct a comment in the tests (authored by asomers).
fusefs: correct a comment in the tests
Jul 23 2025, 10:59 PM
asomers committed rGf1e63fcb0c4a: fusefs: revert a workaround for a googletest bug (authored by asomers).
fusefs: revert a workaround for a googletest bug
Jul 23 2025, 10:59 PM
asomers committed rG9a9e93f38642: Fix the zfsd_fault_001_pos test (authored by asomers).
Fix the zfsd_fault_001_pos test
Jul 23 2025, 10:56 PM
asomers committed rG2a08ae16555e: mac_bsdextended: report that all tests require the kernel module (authored by asomers).
mac_bsdextended: report that all tests require the kernel module
Jul 23 2025, 4:27 PM
asomers committed rG863dc799f743: ctladm: Use require.kmods for cfiscsi (authored by asomers).
ctladm: Use require.kmods for cfiscsi
Jul 23 2025, 4:25 PM

Jul 22 2025

asomers committed rGd3c9f62862e4: ctl: delete dead code in the tests (authored by asomers).
ctl: delete dead code in the tests
Jul 22 2025, 10:57 PM
asomers committed rG2662fd6a487b: fusefs: report that all tests require the fusefs kernel module (authored by asomers).
fusefs: report that all tests require the fusefs kernel module
Jul 22 2025, 10:34 PM

Jul 20 2025

asomers added a comment to D51421: devd: Add vm_guest variable.

The commit message says "jail". But kern.vm_guest doesn't change in a jail. Did you mean to say "in a VM"?

Jul 20 2025, 12:14 AM

Jul 18 2025

asomers committed R11:677e701d5647: devel/fsx: 0.3.1 (authored by asomers).
devel/fsx: 0.3.1
Jul 18 2025, 5:20 PM

Jul 16 2025

asomers committed rGcc61a0793a0e: manpages: prefer linking to xo_options.7 over xo_parse_args.3 (authored by asomers).
manpages: prefer linking to xo_options.7 over xo_parse_args.3
Jul 16 2025, 6:03 PM
asomers closed D51354: manpages: prefer linking to xo_options.7 over xo_parse_args.3.
Jul 16 2025, 6:03 PM
asomers requested review of D51354: manpages: prefer linking to xo_options.7 over xo_parse_args.3.
Jul 16 2025, 5:47 PM
asomers committed R11:e8c85d1e36cb: filesystems/xfuse: 0.5.0 (authored by asomers).
filesystems/xfuse: 0.5.0
Jul 16 2025, 2:27 PM

Jul 15 2025

asomers added a comment to D50698: patch libxo support for fstat.

You need to add "LIBADD= xo" to usr.bin/fstat/Makefile. Also, a lot of fields are missing in the html output, for example file_type. Is that intentional?

Jul 15 2025, 9:27 PM
asomers committed rGb2bf651a797b: sockstat: Reintroduce -w flag with altered behavior (authored by Damin Rido <daminrido139@gmail.com>).
sockstat: Reintroduce -w flag with altered behavior
Jul 15 2025, 9:10 PM
asomers committed rG874385b03f8d: uexterr_gettext: add tests (authored by asomers).
uexterr_gettext: add tests
Jul 15 2025, 8:45 PM
asomers closed D51184: uexterr_gettext: add tests.
Jul 15 2025, 8:45 PM
asomers added a comment to D51316: fusefs: add a regression test for a cluster_read bug.

Would you like me to check if the test really fails on an unpatched system?

Jul 15 2025, 2:19 PM

Jul 14 2025

asomers added a comment to D51254: vfs_cluster.c: Do not propagate VOP_BMAP errors to the caller.

The regression test is at D51316 .

Jul 14 2025, 11:35 PM
asomers requested review of D51316: fusefs: add a regression test for a cluster_read bug.
Jul 14 2025, 11:34 PM
asomers requested changes to D51254: vfs_cluster.c: Do not propagate VOP_BMAP errors to the caller.

I have tested this patch and confirm that it works. I've also written a minimal reproduction case, which I'll post as a separate review. And while I understand Mark's concern, I tend to agree with arrowd's approach. BMAP should be advisory, and readahead should be optional, so errors in neither should cause the main read to fail.
But I would like to see a better commit message. It should contain enough information to describe the problem without resorting to Bugzilla, since Bugzilla might not be around forever.

Jul 14 2025, 11:29 PM

Jul 6 2025

asomers added inline comments to D51184: uexterr_gettext: add tests.
Jul 6 2025, 11:03 PM
asomers requested review of D51184: uexterr_gettext: add tests.
Jul 6 2025, 8:16 PM
asomers abandoned D51174: uexterr_gettext: add tests.

I have no idea why Arcanist decided to include all of those extra revisions when I updated the diff. I did not rebase. Only the most recent three revisions are intended to be part of the review. I'll abandon and reopen.

Jul 6 2025, 8:16 PM
asomers removed reviewers for D51174: uexterr_gettext: add tests: andrew, shurd, manu, brooks, olce, cam.
Jul 6 2025, 8:15 PM
asomers updated the diff for D51174: uexterr_gettext: add tests.
  • Abandon the custom kernel module. Rely on existing syscalls instead.
  • move the test into the kern directory
Jul 6 2025, 8:09 PM

Jul 5 2025

asomers added inline comments to D51174: uexterr_gettext: add tests.
Jul 5 2025, 9:37 PM
asomers requested review of D51174: uexterr_gettext: add tests.
Jul 5 2025, 9:36 PM
asomers accepted D51141: Use extended errors for err(3) and warn(3).
Jul 5 2025, 3:12 PM
asomers added inline comments to D51141: Use extended errors for err(3) and warn(3).
Jul 5 2025, 2:13 AM

Jul 4 2025

asomers accepted D51153: kern: adopt the cr_gid macro for cr_groups[0] more widely.

The fusefs part LGTM. I didn't read the rest.

Jul 4 2025, 7:21 PM
asomers committed rGbc3338985af9: sockstat: microoptimize cap-getnameinfo (authored by asomers).
sockstat: microoptimize cap-getnameinfo
Jul 4 2025, 7:19 PM
asomers added inline comments to D51141: Use extended errors for err(3) and warn(3).
Jul 4 2025, 7:10 PM

Jul 3 2025

asomers committed rG6b8f0b47776b: fusefs: Upgrade FUSE protocol to version 7.35. (authored by mscotty_protonmail.ch).
fusefs: Upgrade FUSE protocol to version 7.35.
Jul 3 2025, 4:25 PM
asomers added inline comments to D51141: Use extended errors for err(3) and warn(3).
Jul 3 2025, 4:00 PM

Jun 28 2025

asomers added a comment to D51081: skip ctladm test if not installed.

This is ok. It should normally be unnecessary, though, because ctladm should always be installed. Are you using pkgbase or something? I guess it might be optional in a pkgbase world.

Yes, indeed, it should now always be installed. However, we have a custom world (WITHOUT_ISCSI) and kernel (no device ctl), and since ctladm is no longer gated behind WITHOUT_ISCSI (commit 08419bf19469), this is the cleanest way I’ve found to fix this specific use case.

Jun 28 2025, 7:37 PM
asomers accepted D51081: skip ctladm test if not installed.

This is ok. It should normally be unnecessary, though, because ctladm should always be installed. Are you using pkgbase or something? I guess it might be optional in a pkgbase world.

Jun 28 2025, 3:42 PM