Hi! Benny, I have tried to add PJ_IOQUEUE_HAS_SAFE_UNREG mechanism to ioqueue_epoll.c. I refer the ioqueue_select.c to modify it and test with my own program. The memory usage will not increase and work ok. I put the modified ioqueue_epoll.c in the attachment. Can you help me to double check it? Thanks! P.S. I find the ioqueue_winnt.c in 1.0 RC1 adding "concurrency" mechanism. Does the ioqueue_epoll.c need to add the same mechanism? Simon ----- Original Message ----- From: Benny Prijono To: pjsip list Sent: Monday, August 18, 2008 7:47 PM Subject: Re: memory usage of epoll implementation On Mon, Aug 18, 2008 at 10:09 AM, Simon Chen <simonmychen at seed.net.tw> wrote: Hi! In ioqueue_select.c, memory of pj_ioqueue_key_t will be reused when compiler option "PJ_IOQUEUE_HAS_SAFE_UNREG" is set. But in ioqueue_epoll.c, it doesn't support this. In pj_ioqueue_register_sock(), it allocates the memory and creates a mutex for pj_ioqueue_key_t by pj_pool_zalloc. But these memory will not be released before memory poll is released. This will increase the memory usage after calling pj_ioqueue_register_sock() in ioqueue_epoll.c. Can ioqueue_epoll.c add the same mechanism to avoid the memory increase? Is there any other concern? Thanks! In general, the epoll ioqueue backend is not actively maintained lately, hence it's not even offered as configuration choice. So I'm not surprised that it has some holes in it. If you think you can make it work, feel free to suggest a patch, I'd be happy to review it. :) Cheers Benny Simon Chen ------------------------------------------------------------------------------ _______________________________________________ Visit our blog: http://blog.pjsip.org pjsip mailing list pjsip at lists.pjsip.org http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20080905/ab14634e/attachment-0001.html -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: ioqueue_epoll.c Url: http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20080905/ab14634e/attachment-0001.c