cls_lock_client.h 788 B

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