Bug 717416
Summary: | [abrt] java-1.6.0-openjdk-1.6.0.0-1.39.1.9.8.el6_1: Process /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/bin/java was killed by signal 6 (SIGABRT) | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise Linux 6 | Reporter: | Red Hat Case Diagnostics <case-diagnostics> | ||||||
Component: | java-1.6.0-openjdk | Assignee: | Deepak Bhole <dbhole> | ||||||
Status: | CLOSED CANTFIX | QA Contact: | BaseOS QE - Apps <qe-baseos-apps> | ||||||
Severity: | medium | Docs Contact: | |||||||
Priority: | medium | ||||||||
Version: | 6.0 | CC: | jwest, rstrode, swaikar | ||||||
Target Milestone: | rc | ||||||||
Target Release: | --- | ||||||||
Hardware: | x86_64 | ||||||||
OS: | Unspecified | ||||||||
Whiteboard: | abrt_hash:f30996fe80077ed9e5153915be00a78af7d53d11 | ||||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||||
Doc Text: | Story Points: | --- | |||||||
Clone Of: | Environment: | ||||||||
Last Closed: | 2011-12-23 16:02:52 UTC | Type: | --- | ||||||
Regression: | --- | Mount Type: | --- | ||||||
Documentation: | --- | CRM: | |||||||
Verified Versions: | Category: | --- | |||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||
Embargoed: | |||||||||
Bug Depends On: | |||||||||
Bug Blocks: | 756082 | ||||||||
Attachments: |
|
Description
Red Hat Case Diagnostics
2011-06-28 19:23:38 UTC
Created attachment 510349 [details]
File: backtrace
Is this error reproducible? The trace was not done with debuginfo installed, and it not of much help as a result unfortunately. Created attachment 510443 [details]
Backtrace, Dissassembly
Thanks for the trace! This is a bug in GConf. The VM is calling gconf_client_get_default (with no arguments) from which point on, GConf code does a bunch of things that ultimately result in a crash. Re-assigning component. Hi, GConf is not a threadsafe library. Multithreaded programs need to do their own locking around gconf calls if they want to use it from multiple threads. It should only be getting called from the main thread in OpenJDK. is there evidence to the contrary (in the trace) that I might have missed? Adding NEEDINFO for Ray. Ray, please check out comment #10. Thanks. Hi, Sorry for the confusion, I misread the trace initially. comment 9 is not applicable to this situation. Having said that, it's very unlikely the problem is in gconf. The particular call leading to the crash (gconf_client_get_default ()) is called by every program that uses gconf as the very first call into the library, and it takes no input values. I suspect some sort of memory corruption at work here. Looking at the trace I see this: #14 0x0000003cb2c1f92c in gconf_get_config_listener () at gconf.c:2564 which (to give a little context) is: ORBit_RootObject_duplicate (poa->poa_manager); frame #13 has poa->poa_manager = 0xaaaaaaaaaaaaaaa suggesting poa is freed memory. Immediately before the call mentioned in frame #14 is where poa is pulled from a hash table that's initialized the first time ORBit is used. Maybe the poa is getting used elsewhere (via the gnome accessibility stack maybe) and it's accidentally getting freed instead of unrefed. Thanks for the in-depth analysis Ray! I have not come across this locally either, but I will keep an eye out for it on Fedora. I see that the original support request has been closed, so there is a good chance that this may have been a one time occurrence. I cannot see anything in the Java Access Bridge code that might be freeing the object. I am going to close this for now as there is nothing we can do further. If I see it on Fedora at some point, I will re-open this one. |