Great- thanks for sorting that out! I will also do some testing against
the current CVS tree to make sure everything looks ok on my end.
In the mean time, I have one more patch (attached). This fixes a memory
leak in the patches that I submitted earlier. It only shows up when the
acache is disabled.
-Phil
Sam Lang wrote:
I've committed these perf counter and acache changes with only a few
mods to work with the small I/O and changes and bring it up to date
with trunk (we use llu() instead of Lu() now, for example). I've
attached the diff of the entire changes I've committed.
-sam
On Dec 13, 2005, at 2:29 PM, Phil Carns wrote:
perf-counter-client.patch:
--------------------------------------
This patch adds performance counter support to pvfs2-client:
- new state machines to periodically rollover the values
- instrumentation of the acache
- command line (to pvfs2-client) as well as /proc/sys/pvfs2 hooks to
modify performance counter parameters (history size, time interval,
etc)
- ability to display performance counter contents in proc
I left something out of this description. It also moves all of the
proc stuff (existing and new) over to a seperate file in the kernel
source, pvfs2-proc.c, since they are starting to take up more real
estate.
-Phil
_______________________________________________
PVFS2-developers mailing list
PVFS2-developers@beowulf-underground.org
http://www.beowulf-underground.org/mailman/listinfo/pvfs2-developers
---------------------
PatchSet 343
Date: 2005/12/16 16:47:12
Author: pcarns
Branch: HEAD
Tag: (none)
Log:
fixed a memory leak when acache is disabled
[artf22808]
Members:
src/client/sysint/acache.c:1.12->1.13
src/common/misc/tcache.c:1.23->1.24
Index: src/client/sysint/acache.c
diff -u src/client/sysint/acache.c:1.12 src/client/sysint/acache.c:1.13
--- src/client/sysint/acache.c:1.12 Tue Dec 6 13:46:30 2005
+++ src/client/sysint/acache.c Fri Dec 16 09:47:12 2005
@@ -369,7 +369,15 @@
struct acache_payload* tmp_payload;
int status;
int removed;
+ unsigned int enabled;
+ /* skip out immediately if the cache is disabled */
+ PINT_tcache_get_info(acache, TCACHE_ENABLE, &enabled);
+ if(!enabled)
+ {
+ return(0);
+ }
+
gossip_debug(GOSSIP_ACACHE_DEBUG, "acache: update(): H=%llu\n",
llu(refn.handle));
Index: src/common/misc/tcache.c
diff -u src/common/misc/tcache.c:1.23 src/common/misc/tcache.c:1.24
--- src/common/misc/tcache.c:1.23 Fri Nov 18 09:15:34 2005
+++ src/common/misc/tcache.c Fri Dec 16 09:47:12 2005
@@ -265,7 +265,8 @@
if(tcache->enable == 0)
{
- /* cache has been disabled, do nothing */
+ /* cache has been disabled, do nothing except discard payload */
+ tcache->free_payload(payload);
return(0);
}
_______________________________________________
PVFS2-developers mailing list
PVFS2-developers@beowulf-underground.org
http://www.beowulf-underground.org/mailman/listinfo/pvfs2-developers