Hi,
I've integrated openldap-2.4.25 with free-radius 2.23 and samba 3.5.1
I've a setup where I used windows 2003 server for LDAP and debian Linux machine as radius server.
when ever chase-referral is enabled, on restarting of windbind process, there is a memory jump happening in radiusd process.
On disabling chase-refferal, the radiusd process works fine with no memory jump.
radiusd process is using openlad 2.4.25 function calls for binding to LDAP server and search
Please guide me how to identify this memory leak?
Thanks, Adarsha
On 05. juni 2015 12:31, Adarsha S wrote:
Please guide me how to identify this memory leak?
Google(find memory leaks).
Try valgrind: Try to run radiusd as "valgrind --leak-check=full radiusd ..." It'll report leaks when it exits, or you can tweak radiusd to report them once in a while when running. With a daemon you may also need to prevent it from detaching and closing stdout/stderr.
hi Hallvard, I tried runnig valgrind.But summery showed me possible leak count. I was not able to co-relate the output with the actual code.
Thanks, Adarsha
On Fri, Jun 5, 2015 at 4:45 PM, Hallvard Breien Furuseth < h.b.furuseth@usit.uio.no> wrote:
On 05. juni 2015 12:31, Adarsha S wrote:
Please guide me how to identify this memory leak?
Google(find memory leaks).
Try valgrind: Try to run radiusd as "valgrind --leak-check=full radiusd ..." It'll report leaks when it exits, or you can tweak radiusd to report them once in a while when running. With a daemon you may also need to prevent it from detaching and closing stdout/stderr.
-- Hallvard
On 05. juni 2015 13:27, Adarsha S wrote:
hi Hallvard, I tried runnig valgrind.But summery showed me possible leak count. I was not able to co-relate the output with the actual code.
valgrind --help --show-reachable=no|yes show reachable blocks in leak check? [no] --show-possibly-lost=no|yes show possibly lost blocks in leak check? [yes]
"possibly lost" = pointer into the memory block instead of to the beginning, I think. "reachable" = there's a reference to the memory when the program died, so technically it's not a "leak".
Hmm, But when ever there is a restart of winbindd process with chase-referral enabled, memory goes high on radiusd process and it will not return to the previous value. If this continues the memory will start depleting on the device.
And the radiusd process is running continuously.So there is no question of program died.
On Fri, Jun 5, 2015 at 5:09 PM, Hallvard Breien Furuseth < h.b.furuseth@usit.uio.no> wrote:
On 05. juni 2015 13:27, Adarsha S wrote:
hi Hallvard, I tried runnig valgrind.But summery showed me possible leak count. I was not able to co-relate the output with the actual code.
valgrind --help --show-reachable=no|yes show reachable blocks in leak check? [no] --show-possibly-lost=no|yes show possibly lost blocks in leak check? [yes]
"possibly lost" = pointer into the memory block instead of to the beginning, I think. "reachable" = there's a reference to the memory when the program died, so technically it's not a "leak".
-- Hallvard
On Fri, 5 Jun 2015, Adarsha S wrote:
I was not able to co-relate the output with the actual code.
Just to check the obvious, did you compile everything with debugging symbols?
I'll also note that all of those versions seem a bit old. If you're going to take your time with this debugging/patching, perhaps some up front upgrade efforts (which may very well bring memory leak fixes along for free) would be worthwhile?
Hi Christian, Aaron,
I tried upgrading to 2.4.40, the latest one, But still I could see the leak. When there is a restart of winbindd, with chase referral enable, radiusd process take up memory and stay there.
Thanks, Adarsha
On Fri, Jun 5, 2015 at 8:22 PM, Aaron Richton richton@nbcs.rutgers.edu wrote:
On Fri, 5 Jun 2015, Adarsha S wrote:
I was not able to co-relate the output with the actual code.
Just to check the obvious, did you compile everything with debugging symbols?
I'll also note that all of those versions seem a bit old. If you're going to take your time with this debugging/patching, perhaps some up front upgrade efforts (which may very well bring memory leak fixes along for free) would be worthwhile?
Hi,
On Fri, 5 Jun 2015, Adarsha S wrote:
Hi,
I've integrated openldap-2.4.25 with free-radius 2.23 and samba 3.5.1
why are you using a more than 4 year old openldap version ? Check the release history on:
http://www.openldap.org/software/release/changes.html
and you will see:
OpenLDAP 2.4.40 Release (2014/09/20) OpenLDAP 2.4.39 Release (2014/01/26) OpenLDAP 2.4.38 Release (2013/11/16) OpenLDAP 2.4.37 Release (2013/10/27) OpenLDAP 2.4.36 Release (2013/08/17) OpenLDAP 2.4.35 Release (2013/03/31) OpenLDAP 2.4.34 Release (2013/03/01) OpenLDAP 2.4.33 Release (2012/10/10) OpenLDAP 2.4.32 Release (2012/07/31) OpenLDAP 2.4.31 Release (2012/04/21) OpenLDAP 2.4.30 Release (2012/02/29) OpenLDAP 2.4.29 Release (2012/02/12) OpenLDAP 2.4.28 Release (2011/11/26) OpenLDAP 2.4.27 Release (2011/11/24) OpenLDAP 2.4.26 Release (2011/06/30) OpenLDAP 2.4.25 Release (2011/03/26)
I've a setup where I used windows 2003 server for LDAP and debian Linux machine as radius server.
when ever chase-referral is enabled, on restarting of windbind process, there is a memory jump happening in radiusd process.
On disabling chase-refferal, the radiusd process works fine with no memory jump.
radiusd process is using openlad 2.4.25 function calls for binding to LDAP server and search
Please guide me how to identify this memory leak?
update first and see if it still persists.
Greetings Christian
Thanks, Adarsha
openldap-technical@openldap.org