Re: [dev-servo] Multiprocess safety

2015-06-19 Thread Patrick Walton
I think I'm convinced it's worthwhile to try harder at getting cross-process channels-over-channels working. It would result in a lot less churn, for sure. The fact that they have to be transmitted out of band is an interesting serialization challenge, but it shouldn't be insurmountable. I think t

Re: [dev-servo] Multiprocess safety

2015-06-19 Thread Andrew McCreight
On Fri, Jun 19, 2015 at 3:21 AM, Robert O'Callahan wrote: > On Fri, Jun 19, 2015 at 7:10 PM, Patrick Walton > wrote: > > > In theory you can use cmsg on POSIX systems to send channels over > > channels, by treating channels as file descriptors. I tried this first, > and > > I believe it actually

Re: [dev-servo] Multiprocess safety

2015-06-19 Thread Robert O'Callahan
On Fri, Jun 19, 2015 at 7:10 PM, Patrick Walton wrote: > In theory you can use cmsg on POSIX systems to send channels over > channels, by treating channels as file descriptors. I tried this first, and > I believe it actually worked well on Linux. But on Mac I ran into all sorts > of (as far as I

Re: [dev-servo] Multiprocess safety

2015-06-19 Thread James Graham
On 19/06/15 00:40, Patrick Walton wrote: In an effort to keep this sort of thing from happening again, I'd like to suggest that all new code that spawns threads and passes channels or boxed objects over channels not be allowed to pass review until audited for multiprocess safety up until the mul

Re: [dev-servo] Multiprocess safety

2015-06-19 Thread Patrick Walton
In theory you can use cmsg on POSIX systems to send channels over channels, by treating channels as file descriptors. I tried this first, and I believe it actually worked well on Linux. But on Mac I ran into all sorts of (as far as I can tell) kernel bugs, including kernel panics and data loss. It