Hi All, So I decided to upgrade to rc2 to deal with the fixes for reported memory leaks. Unfortunately, it now segfaults :-( Operating environment is Redhat AS3 update 8. eventlog and syslog-ng v2 rc2 are configured with default options. running under strace I see: poll([{fd=10, events=POLLOUT, revents=POLLOUT}, {fd=9, events=POLLOUT, revents=P OLLOUT}, {fd=11, events=POLLOUT, revents=POLLOUT}, {fd=12, events=POLLOUT, reven ts=POLLOUT}, {fd=13, events=POLLOUT, revents=POLLOUT}, {fd=4, events=POLLIN}, {f d=6, events=POLLIN}, {fd=8, events=POLLIN, revents=POLLIN}, {fd=3, events=POLLIN }, {fd=5, events=POLLIN}, {fd=7, events=POLLIN}], 11, 29882) = 6 write(10, "Sep 13 13:36:47 local_s@scribe.i"..., 105) = 105 write(10, "Sep 13 13:36:47 host.fq.dn"..., 139) = 139 write(10, "Sep 13 13:36:47 host.fq.dn"..., 195) = 195 write(10, "Sep 13 13:36:47 host.fq.dn"..., 204) = 204 write(10, "Sep 13 13:36:47 host.fq.dn"..., 97) = 97 write(10, "Sep 13 13:36:47 host.fq.dn"..., 115) = 115 --- SIGSEGV (Segmentation fault) @ 0 (0) --- getpid() = 11482 kill(11482, SIGSEGV) = 0 sigreturn() = ? (mask now []) --- SIGSEGV (Segmentation fault) @ 0 (0) --- +++ killed by SIGSEGV +++ Process 11482 detached Any thoughts? I wanted to do more debugging but I need to get a test system together for that. Cheers, Harry
On Wed, 2006-09-13 at 13:56 -0400, Harry Hoffman wrote:
Hi All,
So I decided to upgrade to rc2 to deal with the fixes for reported memory leaks.
Unfortunately, it now segfaults :-(
Operating environment is Redhat AS3 update 8. eventlog and syslog-ng v2 rc2 are configured with default options.
running under strace I see:
poll([{fd=10, events=POLLOUT, revents=POLLOUT}, {fd=9, events=POLLOUT, revents=P OLLOUT}, {fd=11, events=POLLOUT, revents=POLLOUT}, {fd=12, events=POLLOUT, reven ts=POLLOUT}, {fd=13, events=POLLOUT, revents=POLLOUT}, {fd=4, events=POLLIN}, {f d=6, events=POLLIN}, {fd=8, events=POLLIN, revents=POLLIN}, {fd=3, events=POLLIN }, {fd=5, events=POLLIN}, {fd=7, events=POLLIN}], 11, 29882) = 6 write(10, "Sep 13 13:36:47 local_s@scribe.i"..., 105) = 105 write(10, "Sep 13 13:36:47 host.fq.dn"..., 139) = 139 write(10, "Sep 13 13:36:47 host.fq.dn"..., 195) = 195 write(10, "Sep 13 13:36:47 host.fq.dn"..., 204) = 204 write(10, "Sep 13 13:36:47 host.fq.dn"..., 97) = 97 write(10, "Sep 13 13:36:47 host.fq.dn"..., 115) = 115 --- SIGSEGV (Segmentation fault) @ 0 (0) --- getpid() = 11482 kill(11482, SIGSEGV) = 0 sigreturn() = ? (mask now []) --- SIGSEGV (Segmentation fault) @ 0 (0) --- +++ killed by SIGSEGV +++ Process 11482 detached
Any thoughts? I wanted to do more debugging but I need to get a test system together for that.
I have another report too, but I was unable to reproduce the problem for now. I need some more time. Thanks for your patience. -- Bazsi
On Wed, 2006-09-13 at 20:03 +0200, Balazs Scheidler wrote:
On Wed, 2006-09-13 at 13:56 -0400, Harry Hoffman wrote:
Hi All,
So I decided to upgrade to rc2 to deal with the fixes for reported memory leaks.
Unfortunately, it now segfaults :-(
Operating environment is Redhat AS3 update 8. eventlog and syslog-ng v2 rc2 are configured with default options.
This patch fixes the issue for me (one of the leak fixes caused the problem): --- orig/src/logwriter.c +++ mod/src/logwriter.c @@ -485,11 +485,17 @@ log_writer_options_set_template_escape(L void log_writer_options_init(LogWriterOptions *options, GlobalConfig *cfg, guint32 flags, const gchar *stats_name) { - /* NOTE: free everything that might have remained from a previous init - * call, this way init can be called any number of times, without calling - * destroy first */ + LogTemplate *template; + /* NOTE: free everything that might have remained from a previous init + * call, this way init can be called any number of times, without calling + * destroy first. We only need to keep options->template around as that's + * never initialized based on the configuration + */ + + template = log_template_ref(options->template); log_writer_options_destroy(options); + options->template = template; options->flags = flags; if (options->fifo_size == -1) options->fifo_size = cfg->log_fifo_size; Since I'm leaving for holiday tomorrow, I'm releasing an rc3 with this fix included. -- Bazsi
Balazs, Great! Thanks for finding this so quickly :-) I'll test this today. Cheers, Harry Balazs Scheidler wrote:
On Wed, 2006-09-13 at 20:03 +0200, Balazs Scheidler wrote:
On Wed, 2006-09-13 at 13:56 -0400, Harry Hoffman wrote:
Hi All,
So I decided to upgrade to rc2 to deal with the fixes for reported memory leaks.
Unfortunately, it now segfaults :-(
Operating environment is Redhat AS3 update 8. eventlog and syslog-ng v2 rc2 are configured with default options.
This patch fixes the issue for me (one of the leak fixes caused the problem):
--- orig/src/logwriter.c +++ mod/src/logwriter.c @@ -485,11 +485,17 @@ log_writer_options_set_template_escape(L void log_writer_options_init(LogWriterOptions *options, GlobalConfig *cfg, guint32 flags, const gchar *stats_name) { - /* NOTE: free everything that might have remained from a previous init - * call, this way init can be called any number of times, without calling - * destroy first */ + LogTemplate *template;
+ /* NOTE: free everything that might have remained from a previous init + * call, this way init can be called any number of times, without calling + * destroy first. We only need to keep options->template around as that's + * never initialized based on the configuration + */ + + template = log_template_ref(options->template); log_writer_options_destroy(options); + options->template = template; options->flags = flags; if (options->fifo_size == -1) options->fifo_size = cfg->log_fifo_size;
Since I'm leaving for holiday tomorrow, I'm releasing an rc3 with this fix included.
participants (2)
-
Balazs Scheidler
-
Harry Hoffman