Page MenuHomeFreeBSD

fts: Document thread (un)safety
ClosedPublic

Authored by des on Oct 1 2025, 1:21 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Jan 12, 2:20 AM
Unknown Object (File)
Thu, Jan 8, 1:18 PM
Unknown Object (File)
Tue, Jan 6, 2:28 PM
Unknown Object (File)
Mon, Jan 5, 1:49 AM
Unknown Object (File)
Sun, Jan 4, 7:30 AM
Unknown Object (File)
Fri, Jan 2, 7:29 AM
Unknown Object (File)
Fri, Jan 2, 1:22 AM
Unknown Object (File)
Tue, Dec 30, 9:06 PM
Subscribers

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

des requested review of this revision.Oct 1 2025, 1:21 PM

I especially welcome feedback on whether the added text is in the correct place. Unlike e.g. Solaris, we don't have a tradition of including a section on signal or thread safety in our manual pages, so it wasn't immediately obvious to me where to put it. It's not a bug or a security consideration, and I feel that it's too important to bury in a caveat. It could arguably be an implementation note, since we could have chosen to add a mutex to FTS and FTSENT.

markj added a subscriber: markj.

The text looks ok to me. I don't have any strong feelings on where best to put the note, and this page is a bit unconventional already (each function is a top-level section...?).

IMPLEMENTATION NOTES is ok, but maybe a bit misleading: even though this thread-safety property of the interface is an implementation detail, we can't presumably remove it without breaking compatibility, so it's effectively a guarantee of the interface.

This revision is now accepted and ready to land.Oct 3 2025, 2:07 PM

Should I convert the function sections to subsections while I'm at it?

In D52828#1208393, @des wrote:

Should I convert the function sections to subsections while I'm at it?

Certainly no objection from me.

This revision now requires review to proceed.Oct 3 2025, 5:11 PM
This revision is now accepted and ready to land.Oct 3 2025, 9:25 PM
This revision was automatically updated to reflect the committed changes.