diff options
author | Ilya Dryomov <idryomov@gmail.com> | 2016-04-28 16:07:27 +0200 |
---|---|---|
committer | Ilya Dryomov <idryomov@gmail.com> | 2016-05-26 01:15:28 +0200 |
commit | b07d3c4bd7270c74e2b6803af8ac8a00cb3e5ed2 (patch) | |
tree | fcaa24cff4389ab2f0e7b2d2ca327fb76bdef6a7 /include/linux/ceph | |
parent | 1907920324f1f3ebb6618344417c03a2863bba01 (diff) | |
download | op-kernel-dev-b07d3c4bd7270c74e2b6803af8ac8a00cb3e5ed2.zip op-kernel-dev-b07d3c4bd7270c74e2b6803af8ac8a00cb3e5ed2.tar.gz |
libceph: support for checking on status of watch
Implement ceph_osdc_watch_check() to be able to check on status of
watch. Note that the time it takes for a watch/notify event to get
delivered through the notify_wq is taken into account.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Diffstat (limited to 'include/linux/ceph')
-rw-r--r-- | include/linux/ceph/osd_client.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/ceph/osd_client.h b/include/linux/ceph/osd_client.h index 63054fa..2ae7cfd 100644 --- a/include/linux/ceph/osd_client.h +++ b/include/linux/ceph/osd_client.h @@ -213,6 +213,8 @@ struct ceph_osd_linger_request { struct ceph_osd_request *reg_req; struct ceph_osd_request *ping_req; unsigned long ping_sent; + unsigned long watch_valid_thru; + struct list_head pending_lworks; struct ceph_osd_request_target t; u32 last_force_resend; @@ -417,5 +419,7 @@ int ceph_osdc_notify(struct ceph_osd_client *osdc, u32 timeout, struct page ***preply_pages, size_t *preply_len); +int ceph_osdc_watch_check(struct ceph_osd_client *osdc, + struct ceph_osd_linger_request *lreq); #endif |