[389-devel] Please review: Introducing an environment variable USE_VALGRIND to clean up the entry cache and dn cache on exit. | |
| [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] | |
|
Description: If any string is set to an environment variable
USE_VALGRIND, when running a memory leak checking tool (e.g., valgrind), it reduces the noise generated by the entry cache and dn cache. Sample valgrind outputs from the same operations. 1. with USE_VALGRIND ==16525== LEAK SUMMARY: ==16525== definitely lost: 5,102 bytes in 155 blocks ==16525== indirectly lost: 24,655 bytes in 950 blocks ==16525== possibly lost: 13,294 bytes in 433 blocks ==16525== still reachable: 2,209,801 bytes in 17,937 blocks ==16525== suppressed: 0 bytes in 0 blocks ==16525== Reachable blocks (those to which a pointer was found) are not shown. ==16525== To see them, rerun with: --leak-check=full --show-reachable=yes 2. no USE_VALGRIND ==25738== LEAK SUMMARY: ==25738== definitely lost: 5,102 bytes in 155 blocks ==25738== indirectly lost: 24,655 bytes in 950 blocks ==25738== possibly lost: 23,862,444 bytes in 863,885 blocks ==25738== still reachable: 3,093,988 bytes in 41,603 blocks ==25738== suppressed: 0 bytes in 0 blocks ==25738== Reachable blocks (those to which a pointer was found) are not shown. ==25738== To see them, rerun with: --leak-check=full --show-reachable=yes Thanks, --noriko |
From 40ac246939d8e7bf8138c85ea00f30beece094d5 Mon Sep 17 00:00:00 2001
From: Noriko Hosoi <nhosoi@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Wed, 31 Aug 2011 11:09:42 -0700
Subject: [PATCH] Introducing an environment variable USE_VALGRIND to clean up
the entry cache and dn cache on exit.
---
ldap/servers/slapd/back-ldbm/dblayer.c | 23 +++++++++++++----------
1 files changed, 13 insertions(+), 10 deletions(-)
diff --git a/ldap/servers/slapd/back-ldbm/dblayer.c b/ldap/servers/slapd/back-ldbm/dblayer.c
index b3931a4..b158311 100644
--- a/ldap/servers/slapd/back-ldbm/dblayer.c
+++ b/ldap/servers/slapd/back-ldbm/dblayer.c
@@ -2589,16 +2589,19 @@ int dblayer_instance_close(backend *be)
if (NULL == inst)
return -1;
-#if defined(_USE_VALGRIND)
- /* When running a memory leak checking tool (e.g., valgrind),
- it reduces the noise by enabling this code. */
- LDAPDebug1Arg(LDAP_DEBUG_ANY, "%s: Cleaning up entry cache\n",
- inst->inst_name);
- cache_clear(&inst->inst_cache, CACHE_TYPE_ENTRY);
- LDAPDebug1Arg(LDAP_DEBUG_ANY, "%s: Cleaning up dn cache\n",
- inst->inst_name);
- cache_clear(&inst->inst_dncache, CACHE_TYPE_DN);
-#endif
+ if (getenv("USE_VALGRIND")) {
+ /*
+ * if any string is set to an environment variable USE_VALGRIND,
+ * when running a memory leak checking tool (e.g., valgrind),
+ * it reduces the noise by enabling this code.
+ */
+ LDAPDebug1Arg(LDAP_DEBUG_ANY, "%s: Cleaning up entry cache\n",
+ inst->inst_name);
+ cache_clear(&inst->inst_cache, CACHE_TYPE_ENTRY);
+ LDAPDebug1Arg(LDAP_DEBUG_ANY, "%s: Cleaning up dn cache\n",
+ inst->inst_name);
+ cache_clear(&inst->inst_dncache, CACHE_TYPE_DN);
+ }
if (attrcrypt_cleanup_private(inst)) {
LDAPDebug(LDAP_DEBUG_ANY,
--
1.7.4.4
-- 389-devel mailing list 389-devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/389-devel
[Fedora Directory Announce] [Older Fedora Users Mail] [Home] [Fedora Advisory Board] [Fedora Security] [Fedora Maintainers] [Fedora Devel Java] [Fedora Legacy] [Fedora Desktop] [iPod Nano] [ATA RAID] [Fedora Bible] [Fedora Marketing] [Fedora Mentors] [Fedora Package Review] [Fedora Art] [Fedora Music] [Fedora Packaging] [Centos] [Fedora SELinux] [Tux] [Big List of Linux Books] [Yosemite News] [Yosemite Photos] [KDE Users] [Fedora Tools] [Fedora Art] [Fedora Docs]