]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/include/cephfs/libcephfs.h
import quincy beta 17.1.0
[ceph.git] / ceph / src / include / cephfs / libcephfs.h
index 4e20549dc385f95890ddfa7f33a763f02f2450af..a348a5b6c00675c1de2379599b7b187c18406a89 100644 (file)
@@ -20,6 +20,7 @@
 #endif
 #include <utime.h>
 #include <sys/stat.h>
+#include <sys/time.h>
 #include <sys/types.h>
 #include <sys/statvfs.h>
 #include <sys/socket.h>
@@ -39,7 +40,7 @@ extern "C" {
 
 #define LIBCEPHFS_VER_MAJOR 10
 #define LIBCEPHFS_VER_MINOR 0
-#define LIBCEPHFS_VER_EXTRA 2
+#define LIBCEPHFS_VER_EXTRA 3
 
 #define LIBCEPHFS_VERSION(maj, min, extra) ((maj << 16) + (min << 8) + extra)
 #define LIBCEPHFS_VERSION_CODE LIBCEPHFS_VERSION(LIBCEPHFS_VER_MAJOR, LIBCEPHFS_VER_MINOR, LIBCEPHFS_VER_EXTRA)
@@ -83,7 +84,7 @@ struct ceph_file_layout {
 
        /* object -> pg layout */
        uint32_t fl_pg_preferred; /* preferred primary for pg (-1 for none) */
-       uint32_t fl_pg_pool;      /* namespace, crush ruleset, rep level */
+       uint32_t fl_pg_pool;      /* namespace, crush rule, rep level */
 } __attribute__ ((packed));
 
 struct CephContext;
@@ -2093,6 +2094,9 @@ void ceph_finish_reclaim(struct ceph_mount_info *cmount);
 
 /**
  * Register a set of callbacks to be used with this cmount
+ *
+ * This is deprecated, use ceph_ll_register_callbacks2() instead.
+ *
  * @param cmount the ceph mount handle on which the cb's should be registerd
  * @param args   callback arguments to register with the cmount
  *
@@ -2102,6 +2106,19 @@ void ceph_finish_reclaim(struct ceph_mount_info *cmount);
 void ceph_ll_register_callbacks(struct ceph_mount_info *cmount,
                                struct ceph_client_callback_args *args);
 
+/**
+ * Register a set of callbacks to be used with this cmount
+ * @param cmount the ceph mount handle on which the cb's should be registerd
+ * @param args   callback arguments to register with the cmount
+ *
+ * Any fields set to NULL will be ignored. There currently is no way to
+ * unregister these callbacks, so this is a one-way change.
+ *
+ * Returns 0 on success or -EBUSY if the cmount is mounting or already mounted.
+ */
+int ceph_ll_register_callbacks2(struct ceph_mount_info *cmount,
+                               struct ceph_client_callback_args *args);
+
 /**
  * Get snapshot info
  *