[Bug 713237] [NEW] shutdown segv due to race w/ free_waiter threads
dann frazier
dann.frazier at canonical.com
Fri Feb 4 17:23:55 UTC 2011
Public bug reported:
Binary package hint: multipath-tools
I received a coredump from a customer (running a lucid-based system).
Analyzing the core from multipathd shows that we are crashing in waiter.c::free_waiter().
void free_waiter (void *data)
{
struct event_thread *wp = (struct event_thread *)data;
/*
* indicate in mpp that the wp is already freed storage
*/
lock(wp->vecs->lock);
if (wp->mpp)
/*
* be careful, mpp may already be freed -- null if so
*/
wp->mpp->waiter = NULL;
else
condlog(3, "free_waiter, mpp freed before wp=%p,", wp);
unlock(wp->vecs->lock); <<< Crashing here
if (wp->dmt)
dm_task_destroy(wp->dmt);
FREE(wp);
}
The lock is NULL:
(gdb) print wp->vecs->lock
$3 = (pthread_mutex_t *) 0x0
This appears to be the upstream issue fixed here:
http://git.kernel.org/gitweb.cgi?p=linux/storage/multipath-tools/.git;a=commitdiff;h=a403f57b991f3be7c7ea6250d95fad1554c9d6ca
This fix is currently missing from all versions of multipath-tools in
lucid->natty.
(The original customer issue was filed in the private bug #712875.)
** Affects: multipath-tools (Ubuntu)
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Ubuntu
Server Team, which is subscribed to multipath-tools in ubuntu.
https://bugs.launchpad.net/bugs/713237
Title:
shutdown segv due to race w/ free_waiter threads
More information about the Ubuntu-server-bugs
mailing list