History

dlm: adopt orphan locks

A process may exit, leaving an orphan lock in the lockspace. This adds the capability for another process to acquire the orphan lock. Acquiring the orphan just moves the lock from the orphan list onto the acquiring process's list of locks. An adopting process must specify the resource name and mode of the lock it wants to adopt. If a matching lock is found, the lock is moved to the caller's 's list of locks, and the lkid of the lock is returned like the lkid of a new lock. If an orphan with a different mode is found, then -EAGAIN is returned. If no orphan lock is found on the resource, then -ENOENT is returned. No async completion is used because the result is immediately available. Also, when orphans are purged, allow a zero nodeid to refer to the local nodeid so the caller does not need to look up the local nodeid.

David Teigland committed 12 years ago

Commit 2ab4bd81 parent 206c5f64 files · +89 −5Browse files

Showing the changes to include/uapi/linux (1 of 4 files). Show all

Unified · Split

include/uapi/linux/dlmconstants.h+1−1
@@ -114,7 +114,7 @@ · 113 unmodified lines
114 *114 *
115 * DLM_LKF_ORPHAN115 * DLM_LKF_ORPHAN
116 *116 *
117 * not yet implemented117 * Acquire an orphan lock.
118 *118 *
119 * DLM_LKF_ALTPR119 * DLM_LKF_ALTPR
120 *120 *