1*f66241cbSDouglas Fuller #ifndef _LINUX_CEPH_CLS_LOCK_CLIENT_H 2*f66241cbSDouglas Fuller #define _LINUX_CEPH_CLS_LOCK_CLIENT_H 3*f66241cbSDouglas Fuller 4*f66241cbSDouglas Fuller #include <linux/ceph/osd_client.h> 5*f66241cbSDouglas Fuller 6*f66241cbSDouglas Fuller enum ceph_cls_lock_type { 7*f66241cbSDouglas Fuller CEPH_CLS_LOCK_NONE = 0, 8*f66241cbSDouglas Fuller CEPH_CLS_LOCK_EXCLUSIVE = 1, 9*f66241cbSDouglas Fuller CEPH_CLS_LOCK_SHARED = 2, 10*f66241cbSDouglas Fuller }; 11*f66241cbSDouglas Fuller 12*f66241cbSDouglas Fuller int ceph_cls_lock(struct ceph_osd_client *osdc, 13*f66241cbSDouglas Fuller struct ceph_object_id *oid, 14*f66241cbSDouglas Fuller struct ceph_object_locator *oloc, 15*f66241cbSDouglas Fuller char *lock_name, u8 type, char *cookie, 16*f66241cbSDouglas Fuller char *tag, char *desc, u8 flags); 17*f66241cbSDouglas Fuller int ceph_cls_unlock(struct ceph_osd_client *osdc, 18*f66241cbSDouglas Fuller struct ceph_object_id *oid, 19*f66241cbSDouglas Fuller struct ceph_object_locator *oloc, 20*f66241cbSDouglas Fuller char *lock_name, char *cookie); 21*f66241cbSDouglas Fuller int ceph_cls_break_lock(struct ceph_osd_client *osdc, 22*f66241cbSDouglas Fuller struct ceph_object_id *oid, 23*f66241cbSDouglas Fuller struct ceph_object_locator *oloc, 24*f66241cbSDouglas Fuller char *lock_name, char *cookie, 25*f66241cbSDouglas Fuller struct ceph_entity_name *locker); 26*f66241cbSDouglas Fuller 27*f66241cbSDouglas Fuller #endif 28