<div>Hi,
                </div><div><br></div><div>On OSX I keep getting "shutting down finalizer thread timed out" or just process hang ups on exit if I do not use MONO_DISABLE_AIO.</div><div><div><br></div><div>And only if I try to use async send so I don't think this is linux only...</div><div><br></div>-- <br> Roope Kangas / LSD, Grand Cru<br><div> +358 40 869 6976 roope@grandcrugames.com <br> http://grandcrugames.com/ @grandcrugames</div><div><br></div></div>
                 
                <p style="color: #A0A0A8;">On Tuesday, April 23, 2013 at 10:43 AM, Greg Young wrote:</p>
                <blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;">
                    <span><div><div><div>Should this be the new default build for linux then?</div><div><br></div><div>On Tue, Apr 23, 2013 at 4:23 AM, Rodrigo Kumpera <<a href="mailto:kumpera@gmail.com">kumpera@gmail.com</a>> wrote:</div><blockquote type="cite"><div><div>The problem is specific to the epoll backed, if you disable it[1] your</div><div>problem is fixed.</div><div>I could repro it on linux-amd64 with epoll enabled but could not with it</div><div>disabled.</div><div><br></div><div>The way to fix this is:</div><div><br></div><div>-move locking to the epoll backend and make sure it works there;</div><div>-use a pipe like other backends to wake up the waiter and do all epoll ops</div><div>from a single thread</div><div><br></div><div><br></div><div>[1] Set the MONO_DISABLE_AIO env var</div><div><br></div><div>We still have this patch that we use with mono.</div><div><br></div><div>diff --git a/mono/metadata/threadpool.c b/mono/metadata/threadpool.c</div><div>index e8a2f1a..f83e473 100644</div><div>--- a/mono/metadata/threadpool.c</div><div>+++ b/mono/metadata/threadpool.c</div><div>@@ -555,8 +555,8 @@ socket_io_add (MonoAsyncResult *ares,</div><div>MonoSocketAsyncResult *state)</div><div><br></div><div>  mono_g_hash_table_replace (data->sock_to_state, state->handle, list);</div><div>  ievt = get_events_from_list (list);</div><div>- LeaveCriticalSection (&data->io_lock);</div><div>  data->modify (data->event_data, fd, state->operation, ievt, is_new);</div><div>+ LeaveCriticalSection (&data->io_lock);</div><div> }</div><div><br></div><div><br></div><div>We tried to submit this previously as it resolves our problems. It was</div><div>rejected that it introduces a deadlock. We have provided tests that</div><div>show without this change that TCP is basically unusable calls like</div><div>beginsend sometimes never call endsend.</div><div><br></div><div>I would really prefer to not be distributing a "custom" version of</div><div>mono with this patch so how can we resolve this.</div><div><br></div><div>Cheers,</div><div><br></div><div>Greg</div><div><br></div><div>--</div><div>Le doute n'est pas une condition agréable, mais la certitude est absurde.</div><div>_______________________________________________</div><div>Mono-devel-list mailing list</div><div><a href="mailto:Mono-devel-list@lists.ximian.com">Mono-devel-list@lists.ximian.com</a></div><div><a href="http://lists.ximian.com/mailman/listinfo/mono-devel-list">http://lists.ximian.com/mailman/listinfo/mono-devel-list</a></div></div></blockquote><div><br></div><div><br></div><div><br></div><div>-- </div><div>Le doute n'est pas une condition agréable, mais la certitude est absurde.</div><div>_______________________________________________</div><div>Mono-devel-list mailing list</div><div><a href="mailto:Mono-devel-list@lists.ximian.com">Mono-devel-list@lists.ximian.com</a></div><div><a href="http://lists.ximian.com/mailman/listinfo/mono-devel-list">http://lists.ximian.com/mailman/listinfo/mono-devel-list</a></div></div></div></span>
                 
                 
                 
                 
                </blockquote>
                 
                <div>
                    <br>
                </div>