Hello Michal,
I am using libvirt 1.1.3 and perl-Sys-Virt 1.1.3 and perl-5.16 on Fedora
19 x86_64
The zombie process appears after open libvirt connection with qemu-tls,
and perl module is binding for libvirt library XS.
Here is my running example with zombie process:
$ perl test-chldhandle-bug-fixed.pl & sleep 15 && echo && ps axf |
grep perl && echo
[2] 12427
init... pid=12427
while...
fork 1
end... pid=12430
receive chld
fork 2
end... pid=12431
receive chld
2014-03-19 11:06:38.712+0000: 12427: info : libvirt version: 1.1.3.1, package: 2.fc19
(Unknown, 2014-03-17-15:02:00, cmar-laptop.lan)
2014-03-19 11:06:38.712+0000: 12427: warning : virNetTLSContextCheckCertificate:1140 :
Certificate check failed Certificate [session] owner does not match the hostname
10.10.4.249
connection open
fork 3
end... pid=12432
fork 4
end... pid=12440
12427 pts/2 S 0:00 | \_ perl test-chldhandle-bug-fixed.pl
12432 pts/2 Z 0:00 | | \_ [perl] <defunct>
12440 pts/2 Z 0:00 | | \_ [perl] <defunct>
12442 pts/2 S+ 0:00 | \_ grep --color=auto perl
Regards,
--
Carlos Rodrigues
Engenheiro de Software Sénior
Eurotux Informática, S.A. |
www.eurotux.com
(t) +351 253 680 300 (m) +351 911 926 110
On Seg, 2014-03-17 at 13:37 +0100, Michal Privoznik wrote:
On 17.03.2014 12:13, Carlos Rodrigues wrote:
> Hell Michal,
>
> Thank you for your answer, but this doesn't fix my problem.
>
> Run your fixed script and we get the same behavior:
>
> $ perl test-chldhandle-bug-fixed.pl
> init... pid=29713
> while...
> fork 1
> end... pid=29716
> receive chld
> fork 2
> end... pid=29717
> receive chld
> 2014-03-17 11:10:37.234+0000: 29713: info : libvirt version: 1.0.5.7, package:
2.fc19 (Fedora Project, 2013-11-17-23:21:57,
buildvm-18.phx2.fedoraproject.org)
> 2014-03-17 11:10:37.234+0000: 29713: warning : virNetTLSContextCheckCertificate:1099
: Certificate check failed Certificate [session] owner does not match the hostname
10.10.4.249
> connection open
> fork 3
> end... pid=29827
> fork 4
> end... pid=29930
> go next...
>
>
I'm not a perl expert, but I don't think it's a libvirt bug anyhow.
Moreover, I don't see any zombies:
$ perl test-chldhandle-bug-fixed.pl & sleep 5 && echo && ps axf |
grep
perl && echo
[1] 11239
init... pid=11239
while...
fork 1
end... pid=11241
receive chld
fork 2
end... pid=11242
receive chld
connection open
11239 pts/18 S 0:00 | \_ perl test-chldhandle-bug-fixed.pl
11245 pts/18 S+ 0:00 | \_ grep --colour=auto perl
fork 3
end... pid=11246
receive chld
fork 4
end... pid=11247
receive chld
go next...
btw: with older version I'm seeing this:
11399 pts/18 S 0:00 | \_ perl test-chldhandle-bug.pl
11401 pts/18 Z 0:00 | | \_ [perl] <defunct>
11402 pts/18 Z 0:00 | | \_ [perl] <defunct>
11405 pts/18 S+ 0:00 | \_ grep --colour=auto perl
What zombies are you seeing? Perl ones or libvirt or ..,?
Michal