Bug #6528
closed
zypper Segmentation fault when installing the rudder packages
Added by Florian Heigl over 9 years ago.
Updated almost 9 years ago.
Description
Hi,
i checked and it seems I didn't ever open a proper bug for this. So here we go:
Zypper dies if you try to install a rudder agent RPM using "zypper install <file.rpm>".
zypper install for other RPM files does work.
Installing the agent RPM using RPM also works.
root@rudderc1 ~ # zypper install rudder-agent-3.0.4.release-1.SLES.11.x86_64.rpm
Segmentation fault
Reproducible on SLES11SP2, SLES11SP3 and as I hear also on SLES10 :)
I've tried a rpmlint on it, just in hope to drill down on the errors. Didn't help but see for yourself :)
root@rudders1 ~ # rpmlint rudder-agent-3.0.4.release-1.SLES.11.x86_64.rpm
rudder-agent.x86_64: W: manpage-not-gzipped /opt/rudder/man/man3/CGI::Util.3
/Megacli.pm
rudder-agent.x86_64: W: files-duplicate /opt/rudder/share/fusioninventory/lib/FusionInventory/Agent/Task/Inventory.pm /opt/rudder/lib/perl5/FusionInventory/Agent/Task/Inventory.pm
rudder-agent.x86_64: W: files-duplicate /opt/rudder/lib/perl5/FusionInventory/Agent/Task/Deploy.pm /opt/rudder/share/fusioninventory/lib/FusionInventory/Agent/Task/Deploy.pm
rudder-agent.x86_64: W: files-duplicate /opt/rudder/share/fusioninventory/lib/FusionInventory/Agent/Task.pm /opt/rudder/lib/perl5/FusionInventory/Agent/Task.pm
rudder-agent.x86_64: E: files-duplicated-waste 2126267
rudder-agent.x86_64: W: binaryinfo-readelf-failed readelf: Error: Unable to read in 0x6570 bytes of section headers
1 packages and 0 specfiles checked; 119 errors, 1248 warnings.
- Priority changed from N/A to 2
According to GDB, it seems Zypper fails to parse the RPM header properly:
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff65b9ae2 in __strlen_sse2 () from /lib64/libc.so.6
(gdb) bt
#0 0x00007ffff65b9ae2 in __strlen_sse2 () from /lib64/libc.so.6
#1 0x00007ffff7913ed9 in zypp::target::rpm::RpmHeader::dumpOn(std::ostream&) const () from /usr/lib64/libzypp.so.908
#2 0x00007ffff79157a5 in zypp::target::rpm::RpmHeader::readPackage(zypp::filesystem::Pathname const&, zypp::target::rpm::RpmHeader::VERIFICATION) () from /usr/lib64/libzypp.so.908
#3 0x000000000046ea94 in Zypper::doCommand() ()
#4 0x0000000000470298 in Zypper::safeDoCommand() ()
#5 0x0000000000470f31 in Zypper::main(int, char**) ()
#6 0x0000000000441efa in main ()
Let's try to reproduce with an empty RPM with the same header info
Matthieu found a lots of segfault bugs related to zypper, it seems to be quite usual for it...
For now, we are not sur how we can make things better. We are going to open a new bug on zypper bug tracker so that the dev can try to reproduce and understand the problem, and hopefully explains what is so disliked in our rpm.
Short update: SUSE has been contacted.
We tested a PTF for SLES11SP3, but the issue is also present on SLES12.
- Status changed from New to Discussion
- Assignee set to Vincent MEMBRÉ
We managed to test these patches successfully.
The bug to attract others using SLES is:
- Fix segmentation fault when dumping rpm header with epoch. (bnc#929483)
Is there any other need to keep this bug open?
- Related to User story #7652: Document the zypper segfault when installing Rudder packages locally added
- Status changed from Discussion to Rejected
Also available in: Atom
PDF