Bug 209320

Summary: attempt to lock already locked VG hangs with gulm
Product: Red Hat Enterprise Linux 4 Reporter: Nate Straz <nstraz>
Component: lvm2Assignee: Christine Caulfield <ccaulfie>
Status: CLOSED ERRATA QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 4.4CC: agk, cfeist, dwysocha, mbroz
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: RHBA-2007-0287 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-05-08 00:10:05 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:

Description Nate Straz 2006-10-04 16:11:34 UTC
Description of problem:

In a cluster using GuLM, when a second node attempts to exclusively activate a
volume group, the command hangs instead of fails.

Version-Release number of selected component (if applicable):

lvm2-2.02.06-6.0.RHEL4
lvm2-cluster-2.02.06-7.0.RHEL4

How reproducible:
100%

Steps to Reproduce:
1. configure GuLM cluster
2. start clvmd
3. on node A, vgchange -aey <vgname>
4. on node B, vgchange -aey <vgname>
  
Actual results:

The vgchange command on the second node hangs and cannot be interrupted.

Expected results:

The vgchange command on the second node should return an error.

Additional info:

Comment 1 Christine Caulfield 2006-12-11 14:01:36 UTC
clvmd was looking for LCK_NONBLOCK as the flag for a non-blocking lock, whereas
it has been translated into the (DLM-specific) LKF_NOQUEUE flag by that time.

Checking in daemons/clvmd/clvmd-command.c;
/cvs/lvm2/LVM2/daemons/clvmd/clvmd-command.c,v  <--  clvmd-command.c
new revision: 1.14; previous revision: 1.13
done
Checking in daemons/clvmd/clvmd-gulm.c;
/cvs/lvm2/LVM2/daemons/clvmd/clvmd-gulm.c,v  <--  clvmd-gulm.c
new revision: 1.20; previous revision: 1.19
done
Checking in daemons/clvmd/clvmd-gulm.h;
/cvs/lvm2/LVM2/daemons/clvmd/clvmd-gulm.h,v  <--  clvmd-gulm.h
new revision: 1.3; previous revision: 1.2
done
Checking in lib/locking/locking.h;
/cvs/lvm2/LVM2/lib/locking/locking.h,v  <--  locking.h
new revision: 1.29; previous revision: 1.28
done


Comment 3 Christine Caulfield 2006-12-11 14:49:19 UTC
Set to POST rather than MODIFIED...

Comment 4 Alasdair Kergon 2006-12-17 18:49:33 UTC
lvm2-cluster-2.02.17-1

Comment 5 Corey Marthaler 2006-12-19 19:58:55 UTC
fix verified in lvm2-cluster-2.02.17-1.

Comment 9 Red Hat Bugzilla 2007-05-08 00:10:05 UTC
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-2007-0287.html