Peter Dimitrov
2018-Nov-13 13:17 UTC
Re: [Libguestfs] [collectd] collectd leaks SIGCHLD == SIG_IGN into plugins
I was extending the virt plugin. It already collects similar data (about VMs) using Libvirt's API, but lacks disk usage information. I went through some hoops to link libguestfs correctly to collectd. Is it okay to just include fork(), waitpid() example? It does reproduce the issue. Best Regards, Peter On Tue, Nov 13, 2018 at 1:34 PM Richard W.M. Jones <rjones@redhat.com> wrote:> On Tue, Nov 13, 2018 at 12:00:19PM +0100, Florian Forster wrote: > > Hi, > > > > thank you very much for reporting this! Sounds like a bug in the exec > plugin – > > it never ceases to amaze me how many issues a single plugin can have ;) > > > > > > > This means that any plugin that does the usual pattern of: > > > > > > > > > > pid = fork (); > > > > Note that the exec plugin is the *only* plugin that does this. All other > > plugins are forbidden to fork(), popen() or create new processes in any > other > > way. The only plugin doing that, the exec plugin, has had enough issues > over > > the years for me to feel justified in that decision. ;-) > > > > As mentioned before, a Github issue would be appreciated so we can > properly > > track this problem. > > I don't know if Peter is using the exec plugin or is trying to write > an ordinary plugin. However the library he is using (libguestfs) > certainly does fork subprocess(es). > > Rich. > > -- > Richard Jones, Virtualization Group, Red Hat > http://people.redhat.com/~rjones > Read my programming and virtualization blog: http://rwmj.wordpress.com > virt-builder quickly builds VMs from scratch > http://libguestfs.org/virt-builder.1.html >
Richard W.M. Jones
2018-Nov-13 13:28 UTC
Re: [Libguestfs] [collectd] collectd leaks SIGCHLD == SIG_IGN into plugins
On Tue, Nov 13, 2018 at 03:17:33PM +0200, Peter Dimitrov wrote:> I was extending the virt plugin. > It already collects similar data (about VMs) using Libvirt's API, but lacks > disk usage information. > > I went through some hoops to link libguestfs correctly to collectd. > Is it okay to just include fork(), waitpid() example? It does reproduce the > issue.Yes, I think a small example/reproducer is a fine idea. Rich.> Best Regards, > Peter > > > On Tue, Nov 13, 2018 at 1:34 PM Richard W.M. Jones <rjones@redhat.com> > wrote: > > > On Tue, Nov 13, 2018 at 12:00:19PM +0100, Florian Forster wrote: > > > Hi, > > > > > > thank you very much for reporting this! Sounds like a bug in the exec > > plugin – > > > it never ceases to amaze me how many issues a single plugin can have ;) > > > > > > > > > This means that any plugin that does the usual pattern of: > > > > > > > > > > > > pid = fork (); > > > > > > Note that the exec plugin is the *only* plugin that does this. All other > > > plugins are forbidden to fork(), popen() or create new processes in any > > other > > > way. The only plugin doing that, the exec plugin, has had enough issues > > over > > > the years for me to feel justified in that decision. ;-) > > > > > > As mentioned before, a Github issue would be appreciated so we can > > properly > > > track this problem. > > > > I don't know if Peter is using the exec plugin or is trying to write > > an ordinary plugin. However the library he is using (libguestfs) > > certainly does fork subprocess(es). > > > > Rich. > > > > -- > > Richard Jones, Virtualization Group, Red Hat > > http://people.redhat.com/~rjones > > Read my programming and virtualization blog: http://rwmj.wordpress.com > > virt-builder quickly builds VMs from scratch > > http://libguestfs.org/virt-builder.1.html > >-- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming and virtualization blog: http://rwmj.wordpress.com libguestfs lets you edit virtual machines. Supports shell scripting, bindings from many languages. http://libguestfs.org
Peter Dimitrov
2018-Nov-13 13:34 UTC
Re: [Libguestfs] [collectd] collectd leaks SIGCHLD == SIG_IGN into plugins
Github issue is a fact. https://github.com/collectd/collectd/issues/2993 Best Regards, Peter On Tue, Nov 13, 2018 at 3:28 PM Richard W.M. Jones <rjones@redhat.com> wrote:> On Tue, Nov 13, 2018 at 03:17:33PM +0200, Peter Dimitrov wrote: > > I was extending the virt plugin. > > It already collects similar data (about VMs) using Libvirt's API, but > lacks > > disk usage information. > > > > I went through some hoops to link libguestfs correctly to collectd. > > Is it okay to just include fork(), waitpid() example? It does reproduce > the > > issue. > > Yes, I think a small example/reproducer is a fine idea. > > Rich. > > > Best Regards, > > Peter > > > > > > On Tue, Nov 13, 2018 at 1:34 PM Richard W.M. Jones <rjones@redhat.com> > > wrote: > > > > > On Tue, Nov 13, 2018 at 12:00:19PM +0100, Florian Forster wrote: > > > > Hi, > > > > > > > > thank you very much for reporting this! Sounds like a bug in the exec > > > plugin – > > > > it never ceases to amaze me how many issues a single plugin can have > ;) > > > > > > > > > > > This means that any plugin that does the usual pattern of: > > > > > > > > > > > > > > pid = fork (); > > > > > > > > Note that the exec plugin is the *only* plugin that does this. All > other > > > > plugins are forbidden to fork(), popen() or create new processes in > any > > > other > > > > way. The only plugin doing that, the exec plugin, has had enough > issues > > > over > > > > the years for me to feel justified in that decision. ;-) > > > > > > > > As mentioned before, a Github issue would be appreciated so we can > > > properly > > > > track this problem. > > > > > > I don't know if Peter is using the exec plugin or is trying to write > > > an ordinary plugin. However the library he is using (libguestfs) > > > certainly does fork subprocess(es). > > > > > > Rich. > > > > > > -- > > > Richard Jones, Virtualization Group, Red Hat > > > http://people.redhat.com/~rjones > > > Read my programming and virtualization blog: http://rwmj.wordpress.com > > > virt-builder quickly builds VMs from scratch > > > http://libguestfs.org/virt-builder.1.html > > > > > -- > Richard Jones, Virtualization Group, Red Hat > http://people.redhat.com/~rjones > Read my programming and virtualization blog: http://rwmj.wordpress.com > libguestfs lets you edit virtual machines. Supports shell scripting, > bindings from many languages. http://libguestfs.org >
Seemingly Similar Threads
- Re: [collectd] collectd leaks SIGCHLD == SIG_IGN into plugins
- Re: [collectd] collectd leaks SIGCHLD == SIG_IGN into plugins
- Re: [collectd] collectd leaks SIGCHLD == SIG_IGN into plugins
- Re: collectd leaks SIGCHLD == SIG_IGN into plugins
- Re: [collectd] collectd leaks SIGCHLD == SIG_IGN into plugins