From: Xavi Hernandez Date: Tue, 18 Feb 2025 14:19:43 +0000 (+0100) Subject: libcephfs_proxy: define async rw opcode and structures X-Git-Tag: v20.3.0~362^2~3 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=03b92b192720bb41401acfb0da71a50032f7b71b;p=ceph.git libcephfs_proxy: define async rw opcode and structures Signed-off-by: Xavi Hernandez --- diff --git a/src/libcephfs_proxy/proxy_requests.h b/src/libcephfs_proxy/proxy_requests.h index 0b023f2876eaf..7552af6b3390d 100644 --- a/src/libcephfs_proxy/proxy_requests.h +++ b/src/libcephfs_proxy/proxy_requests.h @@ -111,6 +111,7 @@ enum { LIBCEPHFSD_OP_LL_RMDIR, LIBCEPHFSD_OP_LL_RELEASEDIR, LIBCEPHFSD_OP_MOUNT_PERMS, + LIBCEPHFSD_OP_LL_NONBLOCKING_RW, /* Add more operations above this comment. */ @@ -119,6 +120,7 @@ enum { enum { LIBCEPHFSD_CBK_NULL = 0, + LIBCEPHFSD_CBK_LL_NONBLOCKING_RW, /* Add more callbacks above this comment. */ @@ -310,6 +312,11 @@ CEPH_TYPE(ceph_ll_releasedir, REQ_CMOUNT(uint64_t dir;), ANS()); 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; @@ -360,10 +367,15 @@ typedef union _proxy_req { 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