From 81d32abb341f087ce6d1d05ed8ed12949a69654d Mon Sep 17 00:00:00 2001 From: Rainer Gerhards Date: Wed, 19 Mar 2008 17:35:09 +0000 Subject: bugfix: imklog leaked several hundered KB on each HUP. Thanks to varmojfekoj for the patch --- plugins/imklog/imklog.c | 3 +++ plugins/imklog/imklog.h | 2 ++ plugins/imklog/ksym.c | 6 ++++++ plugins/imklog/ksym_mod.c | 6 ++++++ 4 files changed, 17 insertions(+) (limited to 'plugins') diff --git a/plugins/imklog/imklog.c b/plugins/imklog/imklog.c index 02a4a348..bfea8c6f 100644 --- a/plugins/imklog/imklog.c +++ b/plugins/imklog/imklog.c @@ -642,6 +642,9 @@ CODESTARTafterRun /* cleanup here */ if(logsrc != none) CloseLogSrc(); + + DeinitKsyms(); + DeinitMsyms(); ENDafterRun diff --git a/plugins/imklog/imklog.h b/plugins/imklog/imklog.h index d9bd3c02..2db75009 100644 --- a/plugins/imklog/imklog.h +++ b/plugins/imklog/imklog.h @@ -33,7 +33,9 @@ extern int dbgPrintSymbols; /* prototypes */ extern int InitKsyms(char *); +extern void DeinitKsyms(void); extern int InitMsyms(void); +extern void DeinitMsyms(void); extern char * ExpandKadds(char *, char *); extern void SetParanoiaLevel(int); extern void vsyslog(int pri, const char *fmt, va_list ap); diff --git a/plugins/imklog/ksym.c b/plugins/imklog/ksym.c index d8891479..c9fd7147 100644 --- a/plugins/imklog/ksym.c +++ b/plugins/imklog/ksym.c @@ -269,6 +269,12 @@ extern int InitKsyms(char *mapfile) } +extern void DeinitKsyms(void) +{ + FreeSymbols(); +} + + /************************************************************************** * Function: FindSymbolFile * diff --git a/plugins/imklog/ksym_mod.c b/plugins/imklog/ksym_mod.c index a8f4790e..3c7e0e45 100644 --- a/plugins/imklog/ksym_mod.c +++ b/plugins/imklog/ksym_mod.c @@ -279,6 +279,12 @@ static int symsort(const void *p1, const void *p2) } +extern void DeinitMsyms(void) +{ + FreeModules(); +} + + /************************************************************************** * Function: FreeModules * -- cgit