04 Feb, 2008

2 commits


31 Jan, 2008

3 commits

  • A couple small clean-ups. Remove unnecessary wrapper-functions in
    rcom.c, and remove unnecessary casting and an unnecessary ASSERT in
    util.c.

    Signed-off-by: David Teigland

    David Teigland
     
  • Some errno values differ across platforms. So if we return things like
    -EINPROGRESS from one node it can get misinterpreted or rejected on
    another one.

    This patch fixes up the errno values passed on the wire so that they
    match the x86 ones (so as not to break the protocol), and re-instates
    the platform-specific ones at the other end.

    Many thanks to Fabio for testing this patch.
    Initial patch from Patrick.

    Signed-off-by: Patrick Caulfield
    Signed-off-by: Fabio M. Di Nitto
    Signed-off-by: David Teigland

    David Teigland
     
  • DLM_RCOM_LOCK_REPLY messages need byte swapping.

    Signed-off-by: Fabio M. Di Nitto
    Signed-off-by: David Teigland

    Fabio M. Di Nitto
     

06 Feb, 2007

1 commit

  • A reply to a recovery message will often be received after the relevant
    recovery sequence has aborted and the next recovery sequence has begun.
    We need to ignore replies to these old messages from the previous
    recovery. There's already a way to do this for synchronous recovery
    requests using the rc_id number, but not for async.

    Each recovery sequence already has a locally unique sequence number
    associated with it. This patch adds a field to the rcom (recovery
    message) structure where this recovery sequence number can be placed,
    rc_seq. When a node sends a reply to a recovery request, it copies the
    rc_seq number it received into rc_seq_reply. When the first node receives
    the reply to its recovery message, it will check whether rc_seq_reply
    matches the current recovery sequence number, ls_recover_seq, and if not
    then it ignores the old reply.

    An old, inadequate approach to filtering out old replies (checking if the
    current stage of recovery has moved back to the start) has been removed
    from two spots.

    The protocol version number is changed to reflect the different rcom
    structures.

    Signed-off-by: David Teigland
    Signed-off-by: Steven Whitehouse

    David Teigland
     

23 Feb, 2006

1 commit


18 Jan, 2006

1 commit

  • This is the core of the distributed lock manager which is required
    to use GFS2 as a cluster filesystem. It is also used by CLVM and
    can be used as a standalone lock manager independantly of either
    of these two projects.

    It implements VAX-style locking modes.

    Signed-off-by: David Teigland
    Signed-off-by: Steve Whitehouse

    David Teigland