Bug 736396 - Un-initialized "DBusError" causes HAL abort
Summary: Un-initialized "DBusError" causes HAL abort
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: hal
Version: 6.1
Hardware: All
OS: Linux
medium
medium
Target Milestone: rc
: ---
Assignee: Richard Hughes
QA Contact: Desktop QE
URL:
Whiteboard:
Depends On:
Blocks: 782183
TreeView+ depends on / blocked
 
Reported: 2011-09-07 15:20 UTC by Qianfeng Zhang
Modified: 2018-11-14 10:33 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-10-07 22:35:56 UTC


Attachments (Terms of Use)
Call trace recorded from the core file (3.98 KB, text/plain)
2011-09-07 15:20 UTC, Qianfeng Zhang
no flags Details
patch which seems have solved the issue (438 bytes, application/octet-stream)
2011-09-07 15:21 UTC, Qianfeng Zhang
no flags Details

Description Qianfeng Zhang 2011-09-07 15:20:06 UTC
Created attachment 521911 [details]
Call trace recorded from the core file

Description of problem:
   In Huawei's Hardware testing Lab,  the testing engineer can emulating the behaviors of disconnecting/connecting the usb keyboard/mouse by continuously rebooting the BMC console (integated in their Blade Board). After many times of 
disconnecting/connecting the usb keyboard/mouse, the "hald" daemon will disappear
left no information.  By starting the "hald" with option "--daemon=yes --use-syslog --retain-privileges", the core information can be collected. 

A call trace recorded from the core is attached. 

From a simple analysis of the codes following the call trace, we can see that the "DBusError" local variable used in reply_from_singleton_device_changed() is not initialized, and this will cause the hald process to abort with the call path:
    
"reply_from_singleton_device_changed" => "dbus_set_error_from_message" =>  "_dbus_return_val_if_error_is_set" => "_dbus_return_val_if_fail" => 
 "_dbus_warn_check_failed" => "_dbus_abort" =>  "abort"

The issue occurs on both RHEL6.1 for i686 and x86-64 with the following packages:
   hal-0.5.14-11.el6
   dbus-1.2.24-4
   glibc-2.12-1.25
   kernel-2.6.32-131.0.15.el6
   

How reproducible:

  It is very hard to reproduce the issue in ordinary Linux server/Thinkpad environment.  But very ease to reproduce the issue in Huawei's environment since 
the BMC console is able to emulating the disconnecting/connecting of the USB devices while rebooting  and the BMC console can be rebooted by a script calling "ipmitool" frequently

Solving:

   The attached patch has been tested to be able to solve the issue

Comment 1 Qianfeng Zhang 2011-09-07 15:21:57 UTC
Created attachment 521914 [details]
patch which seems have solved the issue

Comment 3 RHEL Product and Program Management 2011-09-07 15:38:28 UTC
This request was evaluated by Red Hat Product Management for
inclusion in the current release of Red Hat Enterprise Linux.
Because the affected component is not scheduled to be updated
in the current release, Red Hat is unfortunately unable to
address this request at this time. Red Hat invites you to
ask your support representative to propose this request, if
appropriate and relevant, in the next release of Red Hat
Enterprise Linux. If you would like it considered as an
exception in the current release, please ask your support
representative.

Comment 6 RHEL Product and Program Management 2012-07-10 06:19:56 UTC
This request was not resolved in time for the current release.
Red Hat invites you to ask your support representative to
propose this request, if still desired, for consideration in
the next release of Red Hat Enterprise Linux.

Comment 7 RHEL Product and Program Management 2012-07-10 23:23:17 UTC
This request was erroneously removed from consideration in Red Hat Enterprise Linux 6.4, which is currently under development.  This request will be evaluated for inclusion in Red Hat Enterprise Linux 6.4.

Comment 8 RHEL Product and Program Management 2012-09-07 05:17:38 UTC
This request was evaluated by Red Hat Product Management for
inclusion in the current release of Red Hat Enterprise Linux.
Because the affected component is not scheduled to be updated
in the current release, Red Hat is unable to address this
request at this time.

Red Hat invites you to ask your support representative to
propose this request, if appropriate, in the next release of
Red Hat Enterprise Linux.

Comment 9 RHEL Product and Program Management 2013-10-14 01:00:10 UTC
This request was evaluated by Red Hat Product Management for
inclusion in the current release of Red Hat Enterprise Linux.
Because the affected component is not scheduled to be updated
in the current release, Red Hat is unable to address this
request at this time.

Red Hat invites you to ask your support representative to
propose this request, if appropriate, in the next release of
Red Hat Enterprise Linux.


Note You need to log in before you can comment on or make changes to this bug.