/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ /****************************************************************************** ******************************************************************************* ** ** Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved. ** Copyright (C) 2004-2007 Red Hat, Inc. All rights reserved. ** ** This copyrighted material is made available to anyone wishing to use, ** modify, copy, or redistribute it subject to the terms and conditions ** of the GNU General Public License v.2. ** ******************************************************************************* ******************************************************************************/ #ifndef _LINUX_DLM_DEVICE_H #define _LINUX_DLM_DEVICE_H /* This is the device interface for dlm, most users will use a library * interface. */ #include <linux/dlm.h> #include <linux/types.h> #define DLM_USER_LVB_LEN … /* Version of the device interface */ #define DLM_DEVICE_VERSION_MAJOR … #define DLM_DEVICE_VERSION_MINOR … #define DLM_DEVICE_VERSION_PATCH … /* struct passed to the lock write */ struct dlm_lock_params { … }; struct dlm_lspace_params { … }; struct dlm_purge_params { … }; struct dlm_write_request { … }; struct dlm_device_version { … }; /* struct read from the "device" fd, consists mainly of userspace pointers for the library to use */ struct dlm_lock_result { … }; /* Commands passed to the device */ #define DLM_USER_LOCK … #define DLM_USER_UNLOCK … #define DLM_USER_QUERY … #define DLM_USER_CREATE_LOCKSPACE … #define DLM_USER_REMOVE_LOCKSPACE … #define DLM_USER_PURGE … #define DLM_USER_DEADLOCK … /* Lockspace flags */ #define DLM_USER_LSFLG_AUTOFREE … #define DLM_USER_LSFLG_FORCEFREE … #endif