On 7/14/25 11:57, Paul Floyd via oi-dev wrote:
This just looks like a kernel bug to me (in both Solaris 11.4 and illumos).
It's not a bug, just a different design decision.
The Solaris 11.4 man page says (and I guess illumos is the same): ETXTBSY The file is a pure procedure (shared text) file that is being executed and oflagis O_WRONLYor O_RDWR.
That text comes from POSIX and is listed under the "The open() and openat() functions may fail if:" section - i.e. POSIX allows OS'es to return that error if they choose, but does not require them to do so. Solaris has chosen not to do so for decades now (at least as far back as Solaris 2.0 as best I can tell, and possibly into the SunOS era before that), and has documented that in past POSIX conformance submissions, such as: https://www.opengroup.org/csq/repository/noreferences=1&RID=sun%252FSD1%252F8.html As https://lwn.net/Articles/866493/ pointed out a few years ago, you can't even really rely on it on Linux, and it's been mostly pointless since the advent of shared libraries. -- -Alan Coopersmith- [email protected] Oracle Solaris Engineering - https://blogs.oracle.com/solaris _______________________________________________ oi-dev mailing list [email protected] https://openindiana.org/mailman/listinfo/oi-dev
