Index Index for
Section 3
Index Alphabetical
listing for D
Bottom of page Bottom of
page

dlm_cancel(3)

NAME

dlm_cancel - Cancels a lock conversion request

LIBRARY

Distributed Lock Manager Library (libdlm.a)

SYNOPSIS

#include <sys/dlm.h> dlm_status_t dlm_cancel ( dlm_lkid_t *lkid_p, dlm_flags_t flags );

PARAMETERS

lkid_p Specifies the lock ID of the lock request to be canceled. flags Specifies flags that modify the cancel operation. Only one flag is defined: DLM_CANCELWAITOK. This flag causes the distributed lock manager (DLM) to dequeue waiting lock requests as well as conversion requests.

DESCRIPTION

The dlm_cancel() function cancels a lock conversion request, returning the lock from the converting state to its prior granted state. You can use the dlm_cancel() function to dequeue a waiting lock request if you specify the DLM_CANCELWAITOK flag. The existing granted lock remains unchanged. After a request is canceled, the prior granted mode, blocking notification routine, and blocking parameter are in effect as if the conversion was never attempted. The following specific actions are taken: · If the granted mode to which lock has been reverted is blocking requests waiting in the conversion queue, the blocking notification routine specified for the granted lock is queued for delivery. · If the conversion request specified a completion routine, the completion routine is queued for delivery with DLM_CANCEL status.

RETURN VALUES

Upon completion, the dlm_cancel() function call returns one of the following values: DLM_SUCCESS The lock request was canceled successfully. DLM_BADPARAM Illegal flags were specified. DLM_CANCELGRANT The lock request could not be canceled because it was already granted. DLM_CANCELWAIT The DLM_CANCELWAITOK flag was not specified and an attempt was made to cancel a lock that has not been granted (and, as a result, cannot be in the conversion queue). DLM_ENOSYS The distributed lock manager subsystem is not loaded. DLM_IVLOCKID An invalid or nonexistent lock identification was specified.

FILES

/usr/include/sys/dlm.h DLM library header file. /usr/examples/cluster/api_ex_master.c|api_ex_client.c Source files for example showing lock conversion and value block usage.

RELATED INFORMATION

Functions: dlm_cvt(3), dlm_detach(3), dlm_get_lkinfo(3), dlm_get_rsbinfo(3), dlm_glc_attach(3), dlm_glc_create(3), dlm_glc_detach(3), dlm_glc_destroy(3), dlm_lock(3), dlm_notify(3), dlm_nsjoin(3), dlm_nsleave(3),dlm_perrno(3), dlm_quecvt(3), dlm_quelock(3), dlm_rd_attach(3), dlm_rd_collect(3), dlm_rd_detach(3), dlm_rd_validate(3), dlm_set_signal(3), dlm_unlock(3) File: dlm(4) TruCluster Server Cluster Highly Available Applications

Index Index for
Section 3
Index Alphabetical
listing for D
Top of page Top of
page