Date: Mon, 25 Jul 2011 19:00:09 +0200 From: Michael Gmelin <freebsd@grem.de> To: freebsd-bugs@FreeBSD.org Subject: Re: kern/159179: [libc] close(2) emitting ECONNRESET is not POSIX compliant Message-ID: <C0F99659-5624-422E-B452-7B0C29E636CB@grem.de> In-Reply-To: <201107251010.p6PAA7Ta088111@freefall.freebsd.org> References: <201107251010.p6PAA7Ta088111@freefall.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Thinking about this, even the previous behavior (returning EINVAL) was not POSIX.1 compliant (at least as far as I understand the standard). The author of the patch clearly states that he thinks it is compliant, so it would be interesting to see what his perception is based on. It would also be good to get a better understanding of why this error is emitted in the first place (I got a rough understanding of how the pcb's come into play here) and why this seems to happen more frequently now (finer grained locking, multithreading etc.). FInally it would be interesting to know if this is connected to the rewrites that have taken place between 7 and 8. Ultimately I think whatever is going on behind the scenes, the high level API calls should be POSIX compliant - alternatively the documentation/man pages should clearly state, where they're not.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?C0F99659-5624-422E-B452-7B0C29E636CB>
