#124: running jabberd 2.1.12 with electric fence
-------------------+--------------------------------------------------------
Reporter:  tofu    |        Owner:  smoku  
    Type:  defect  |       Status:  new    
Priority:  major   |    Component:  General
 Version:  2.1.11  |   Resolution:         
Keywords:          |     Blocking:         
-------------------+--------------------------------------------------------
Comment (by jack):

 It looks to me after investigating that [313] is just plain wrong.  You
 can't free the socket from _mio_close as this can be called from callbacks
 in mio_run.  This means that during the middle of the event processing the
 fd pointer can get freed and set to NULL.

 I don't understand why this change was made.  The only thing I can think
 of is that epoll is not generating an event for when the socket is closed,
 but that is probably because you are removing the socket from the event
 queue.

 If it is leaking fds, then there needs to be a closing_queue type thing
 that gets freed by mio_run.  For now, it is better to leak than crash!

-- 
Ticket URL: <http://jabberd2.xiaoka.com/ticket/124#comment:4>
jabberd2 <http://jabberd2.xiaoka.com/>
jabberd2 project
_______________________________________________
Jabberd2 mailing list
[email protected]
http://lists.xiaoka.com/listinfo.cgi/jabberd2-xiaoka.com

Reply via email to