LIBCEPHFSD_OP_LL_RMDIR,
LIBCEPHFSD_OP_LL_RELEASEDIR,
LIBCEPHFSD_OP_MOUNT_PERMS,
+ LIBCEPHFSD_OP_LL_NONBLOCKING_RW,
/* Add more operations above this comment. */
enum {
LIBCEPHFSD_CBK_NULL = 0,
+ LIBCEPHFSD_CBK_LL_NONBLOCKING_RW,
/* Add more callbacks above this comment. */
CEPH_TYPE(ceph_mount_perms, REQ_CMOUNT(), ANS(uint64_t userperm;));
+CEPH_TYPE(ceph_ll_nonblocking_readv_writev,
+ REQ_CMOUNT(uint64_t info; uint64_t fh; int64_t off; uint64_t size;
+ bool write; bool fsync; bool syncdataonly;),
+ ANS(int64_t res;));
+
typedef union _proxy_req {
proxy_link_req_t header;
proxy_ceph_ll_rmdir_req_t ll_rmdir;
proxy_ceph_ll_releasedir_req_t ll_releasedir;
proxy_ceph_mount_perms_req_t mount_perms;
+ proxy_ceph_ll_nonblocking_readv_writev_req_t ll_nonblocking_rw;
} proxy_req_t;
+CEPH_TYPE_CBK(ceph_ll_nonblocking_readv_writev,
+ CBK(uint64_t info; int64_t res;));
+
typedef union _proxy_cbk {
proxy_link_req_t header;
+ proxy_ceph_ll_nonblocking_readv_writev_cbk_t ll_nonblocking_rw;
} proxy_cbk_t;
#endif