Bug 359271 - gfs_controld - make un-contended plocks faster by implementing an ownership mechanism
gfs_controld - make un-contended plocks faster by implementing an ownership m...
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: cman (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Abhijith Das
GFS Bugs
Depends On:
  Show dependency treegraph
Reported: 2007-10-30 17:38 EDT by Abhijith Das
Modified: 2009-04-16 18:26 EDT (History)
3 users (show)

See Also:
Fixed In Version: RHBA-2008-0347
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2008-05-21 11:58:12 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Abhijith Das 2007-10-30 17:38:59 EDT
Description of problem:
Even when there is no contention between nodes for plocks on a given file,
cluster-wide plock messages are circulated. This greatly impacts plock
throughput. Main implication is poor samba performance.

A file-lease type design entirely implemented in gfs_controld will allow local
plocks to be obtained when there is no contention, thereby speeding up
performance. When contention arises, the locks will automatically distribute and
operations would fallback to clustered plocks.
Comment 1 RHEL Product and Program Management 2007-11-12 11:44:31 EST
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux maintenance release.  Product Management has requested
further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed
products.  This request is not yet committed for inclusion in an Update
Comment 2 Nate Straz 2007-12-04 11:54:09 EST
Please explain how to enable this feature so QA can add coverage to our test suites.
Comment 3 David Teigland 2007-12-04 12:41:05 EST
Code checked into cvs HEAD, once we've done some more basic testing we'll
put it into the RHEL5 branch.

CVSROOT:        /cvs/cluster
Module name:    cluster
Changes by:     teigland@sourceware.org 2007-11-28 20:49:08

Modified files:
        group/gfs_controld: cpg.c lock_dlm.h main.c plock.c recover.c

Log message:
        A performance optimization for plocks.  This speeds up locks that are   
        repeatedly accessed by processes on a single node.  Plocks used by
        processes on multiple nodes work the same way as before.  The
        optimization is disabled by default, and can be enabled by setting

        <gfs_controld plock_ownership="1"/>

        in cluster.conf, or by starting gfs_controld with "-o1".  It is disabled
        by default because enabling it breaks compatibility with previous versions
        of gfs_controld.  If all nodes in the cluster are running this version,
        then plock_ownership can be enabled.

        The plock_ownership mode needs extensive testing.  This also introduces 
        some minor changes when plock_ownership is disabled, so new testing is  
        also required in that mode.  Abhi and I worked on this together.
Comment 4 David Teigland 2007-12-04 12:42:06 EST
To enable the performance enhancement, add this to cluster.conf:

  <gfs_controld plock_ownership="1"/>
Comment 5 David Teigland 2007-12-04 12:43:09 EST
gfs_controld is in the cman package
Comment 8 errata-xmlrpc 2008-05-21 11:58:12 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.


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