
On 07/24/2015 09:22 PM, Donn Cave wrote:
Quoth David Turner
, Could you be a bit more specific? Which bits of pre-existing software didn't have a FD_CLOEXEC bit and would be broken by this proposal?
Well, of course to be precise, the bit's always there, it's just normally not set - that's the normal environment that anything written up to now would expect. And of course, anything that depends on a GHC-opened file to stay open over an exec would be broken. I can't enumerate the software that meets that criterion.
Since Python recently decided to go through this exact transition, their experience should be instructive. Do you know if there was negative fallout from PEP 0466?
I gave up on Python a long time ago and don't follow what goes on. If recently means less than a decade or so, though, it's not much to go on. If the problem addressed by the O_CLOEXEC proposal is obscure, the problems it may create are even more so - I'll certainly concede that - and it could take a lot of experience before those problems would be well known enough to show up if you went looking for them.
It seems to me that discovering a "FD-was-unexpectedly-closed-before-it-was-supposed-to" problem is a lot more likely than discovering FD leaks, no? (Not that I'm advocating any particular solution to this -- backward compatibility is a harsh mistress.) Regards,