1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-21 13:34:40 +03:00

Fix a starup race in clvmd that could result in huge waits for the first command to be processed.

This commit is contained in:
Christine Caulfield 2008-11-21 13:48:00 +00:00
parent edd86b1fe4
commit acc4138895
2 changed files with 4 additions and 3 deletions

View File

@ -1,5 +1,6 @@
Version 2.02.44 - Version 2.02.44 -
==================================== ====================================
Fix startup race in clvmd.
Generate Red Hat clvmd startup script at configuration time with correct paths. Generate Red Hat clvmd startup script at configuration time with correct paths.
Fix clvmd & dmeventd builds after tree restructuring. Fix clvmd & dmeventd builds after tree restructuring.
Cope with snapshot dependencies when removing a whole VG with lvremove. Cope with snapshot dependencies when removing a whole VG with lvremove.

View File

@ -423,6 +423,9 @@ int main(int argc, char *argv[])
/* This needs to be started after cluster initialisation /* This needs to be started after cluster initialisation
as it may need to take out locks */ as it may need to take out locks */
DEBUGLOG("starting LVM thread\n"); DEBUGLOG("starting LVM thread\n");
/* Don't let anyone else to do work until we are started */
pthread_mutex_lock(&lvm_start_mutex);
pthread_create(&lvm_thread, NULL, lvm_thread_fn, pthread_create(&lvm_thread, NULL, lvm_thread_fn,
(void *)(long)using_gulm); (void *)(long)using_gulm);
@ -1758,9 +1761,6 @@ static __attribute__ ((noreturn)) void *lvm_thread_fn(void *arg)
sigset_t ss; sigset_t ss;
int using_gulm = (int)(long)arg; int using_gulm = (int)(long)arg;
/* Don't let anyone else to do work until we are started */
pthread_mutex_lock(&lvm_start_mutex);
DEBUGLOG("LVM thread function started\n"); DEBUGLOG("LVM thread function started\n");
/* Ignore SIGUSR1 & 2 */ /* Ignore SIGUSR1 & 2 */