| Summary: | [zypper] zypper segfault in qemux86-64 sdk image | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [Build System, Metadata & Runtime] OE-Core | Reporter: | Jiajun Xu <jiajun.xu> | ||||||
| Component: | core | Assignee: | Qing He <qing.he> | ||||||
| Status: | VERIFIED FIXED | QA Contact: | |||||||
| Severity: | normal | ||||||||
| Priority: | Medium | CC: | bluelightning, kunwei.tian, liangliang.wang, meta.mr.watcher, meta.watcher, sgw | ||||||
| Version: | 1.0 | ||||||||
| Target Milestone: | 1.0 M4 | ||||||||
| Hardware: | x86 | ||||||||
| OS: | x86_64 | ||||||||
| Whiteboard: | |||||||||
| OS type for building Yocto: | --- | Type of Regression: | --- | ||||||
| Verified: | Documentation change: | --- | |||||||
| Attachments: |
|
||||||||
|
Description
Jiajun Xu
2011-02-14 17:54:20 UTC
I also met "Segmentation fault" on qemumips sato and sdk images when running "zypper search" or "zypper licenses". image location: http://autobuilder.pokylinux.org/nightly/20110212-1/ root@qemumips:~# zypper search avahi Loading repository data... Reading installed packages... S | Name | Summary | Type --+-------------------+------------------------------------------------+-------- i | avahi | Avahi IPv4LL network address configuration d-> | package i | avahi-daemon | Avahi IPv4LL network address configuration d-> | package i | avahi-dev | Avahi IPv4LL network address configuration d-> | package i | libavahi-client3 | Avahi IPv4LL network address configuration d-> | package i | libavahi-common3 | Avahi IPv4LL network address configuration d-> | package i | libavahi-core7 | Avahi IPv4LL network address configuration d-> | package i | libavahi-glib1 | Avahi IPv4LL network address configuration d-> | package i | libavahi-gobject0 | Avahi IPv4LL network address configuration d-> | package *** glibc detected *** zypper: munmap_chunk(): invalid pointer: 0x005d9550 *** Aborted root@qemumips:~# had a look at the segfault point, it happened in the global destructor (at_exit), it's something like: std::map<str::string, zypp::RWCOW_pointer<zypp::url::UrlBase,...>> :: ~map() in libzypp.so Tried libzypp-dbg packages but got no good, for 1) analyzing core dump with debug symbol will make gdb crash (system memory raised to 512M), interactive debugging simply hangs. So there is no filename and number information. Since it's in global destructor, the object we are looking for comes probably from a static initialization, skimming through the code, the best guest may be one of the following three: static std::map<std::string,ServiceType::Type> _table; static std::map<std::string,ResourceType::Type> _table; static std::map<std::string,RepoType::Type> _table; Created attachment 99 [details]
valgrind output for qemux86-64
Not sure if this is of use but here's the valgrind output for "zypper search" on qemux86-64.
Created attachment 100 [details]
valgrind output for qemux86
For comparison here's the valgrind output for "zypper search" on qemux86, where for me it doesn't crash.
Have tracked this down to librpmio (rpmio/mire.c line 361) - the allocated size for the struct is too small and thus nasty stuff happens when it is passed to regcomp. At Mark's suggestion I am sending a question to rpm-devel about this. (In reply to comment #3) > Created attachment 99 [details] > valgrind output for qemux86-64 > Not sure if this is of use but here's the valgrind output for "zypper search" > on qemux86-64. there is exactly the same call trace in the qemuppc -sdk image case, see Bug 722 With "zypper addrepo", such segfault will also happen on qemux86-64. The segfault still occurs on qemumips sato/sdk with 'zypper search avahi'. Image location: http://autobuilder.yoctoproject.org/nightly/20110305-4/machines/qemu/qemumips/ commit c192fefd868be53c20dfd8bc44e3e815cf53a10a (In reply to comment #10) > The segfault still occurs on qemumips sato/sdk with 'zypper search avahi'. > Image location: > http://autobuilder.yoctoproject.org/nightly/20110305-4/machines/qemu/qemumips/ > commit c192fefd868be53c20dfd8bc44e3e815cf53a10a hi Wang Liang, Can you post the error message on qemumips images? btw, zypper as current state does not support mips in its architecture table (In reply to comment #11) > (In reply to comment #10) > > The segfault still occurs on qemumips sato/sdk with 'zypper search avahi'. > > Image location: > > http://autobuilder.yoctoproject.org/nightly/20110305-4/machines/qemu/qemumips/ > > commit c192fefd868be53c20dfd8bc44e3e815cf53a10a > > hi Wang Liang, > Can you post the error message on qemumips images? > > btw, zypper as current state does not support mips in its architecture table Please see below for the error message on qemumips. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ root@qemumips:~# zypper search avahi Loading repository data... Reading installed packages... S | Name | Summary | Type --+-------------------+-----------------------------------------------------------------------+-------- i | avahi | Avahi IPv4LL network address configuration daemon | package i | avahi-daemon | Avahi IPv4LL network address configuration daemon | package i | avahi-dev | Avahi IPv4LL network address configuration daemon - Development files | package i | libavahi-client3 | Avahi IPv4LL network address configuration daemon | package i | libavahi-common3 | Avahi IPv4LL network address configuration daemon | package i | libavahi-core7 | Avahi IPv4LL network address configuration daemon | package i | libavahi-glib1 | Avahi IPv4LL network address configuration daemon | package i | libavahi-gobject0 | Avahi IPv4LL network address configuration daemon | package Segmentation fault root@qemumips:~# zypper search avahi Loading repository data... Reading installed packages... S | Name | Summary | Type --+-------------------+-----------------------------------------------------------------------+-------- i | avahi | Avahi IPv4LL network address configuration daemon | package i | avahi-daemon | Avahi IPv4LL network address configuration daemon | package i | avahi-dev | Avahi IPv4LL network address configuration daemon - Development files | package i | libavahi-client3 | Avahi IPv4LL network address configuration daemon | package i | libavahi-common3 | Avahi IPv4LL network address configuration daemon | package i | libavahi-core7 | Avahi IPv4LL network address configuration daemon | package i | libavahi-glib1 | Avahi IPv4LL network address configuration daemon | package i | libavahi-gobject0 | Avahi IPv4LL network address configuration daemon | package *** glibc detected *** zypper: corrupted double-linked list: 0x005d78b0 *** Aborted root@qemumips:~# Hi Liang, Since the original failure I reported on qemux86-64 is fixed by Qing and your failure seems another bug, could you open a new bug for qemumips failure? I will verify the bug as FIXED becasue I never met segfault on qemux86-64 now. |