Bug 197396 - dmeventd threads ignoring pthread_cancel causing cluster mirror recovery commands to fail
dmeventd threads ignoring pthread_cancel causing cluster mirror recovery comm...
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 4
Classification: Red Hat
Component: device-mapper (Show other bugs)
4.0
All Linux
high Severity high
: ---
: ---
Assigned To: Jonathan Earl Brassow
:
Depends On:
Blocks: 181411
  Show dependency treegraph
 
Reported: 2006-06-30 16:34 EDT by Jonathan Earl Brassow
Modified: 2010-01-11 21:16 EST (History)
9 users (show)

See Also:
Fixed In Version: RHBA-2006-0434
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2006-08-10 17:26:31 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
Patch to handle threads that ignore pthread_cancel (4.95 KB, text/x-patch)
2006-06-30 16:34 EDT, Jonathan Earl Brassow
no flags Details

  None (edit)
Description Jonathan Earl Brassow 2006-06-30 16:34:50 EDT
Mirroring uses a process called 'dmeventd' to monitor devices for failures. 
When dmeventd receives a request to monitor a device, it creates a new thread to
watch it.  Also, when a device no longer needs monitoring, dmeventd will reap
the thread.

Monitoring/unmonitoring events happen as a natural course of recovery while the
device is being reconfigured.

In the case of cluster mirrors, if a log device where to fail, dmeventd would
try to reduce the mirror from one with a disk log to one without.  This means
the device must be unmonitored and remonitored when the new device is ready. 
dmeventd would get stuck waiting for a thread to be reaped, and hang the
recovery command.  The overall command would then timeout leaving the bad mirror
in place.  Further, since the command to recover is hung on a particular node,
all lvm commands to that node hang waiting for a lock and subsequently fail.
Comment 1 Jonathan Earl Brassow 2006-06-30 16:34:51 EDT
Created attachment 131831 [details]
Patch to handle threads that ignore pthread_cancel
Comment 5 Alasdair Kergon 2006-07-05 13:57:14 EDT
included in 1.02.07-3.0
Comment 9 Red Hat Bugzilla 2006-08-10 17:26:31 EDT
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHBA-2006-0434.html

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