From: Jason Dillaman Date: Tue, 6 Oct 2015 16:48:50 +0000 (-0400) Subject: rbd-replay-prep: support new read/write APIs X-Git-Tag: v0.94.6~69^2~7 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=9f81d28107bd82b7118d1521ade982ab179c5a7a;p=ceph.git rbd-replay-prep: support new read/write APIs Added support for read2, write2, aio_read2, and aio_write2 APIs. Fixes: 13325 Backport: hammer Signed-off-by: Jason Dillaman (cherry picked from commit b5b4a9dd6bfe10844327a457849a0dbf7ef597ea) --- diff --git a/src/rbd_replay/rbd-replay-prep.cc b/src/rbd_replay/rbd-replay-prep.cc index 7468eb09298..e0998f5b2f3 100644 --- a/src/rbd_replay/rbd-replay-prep.cc +++ b/src/rbd_replay/rbd-replay-prep.cc @@ -366,7 +366,8 @@ private: const struct bt_definition *m_scope; } fields(evt, scope_fields); - if (strcmp(event_name, "librbd:read_enter") == 0) { + if (strcmp(event_name, "librbd:read_enter") == 0 || + strcmp(event_name, "librbd:read2_enter") == 0) { string name(fields.string("name")); string snap_name(fields.string("snap_name")); bool readonly = fields.int64("read_only"); @@ -414,7 +415,8 @@ private: IO::ptr completionIO(thread->pending_io()->create_completion(ts, threadID)); m_ios.push_back(completionIO); completed(completionIO); - } else if (strcmp(event_name, "librbd:write_enter") == 0) { + } else if (strcmp(event_name, "librbd:write_enter") == 0 || + strcmp(event_name, "librbd:write2_enter") == 0) { string name(fields.string("name")); string snap_name(fields.string("snap_name")); bool readonly = fields.int64("read_only"); @@ -431,7 +433,8 @@ private: IO::ptr completionIO(thread->pending_io()->create_completion(ts, threadID)); m_ios.push_back(completionIO); completed(completionIO); - } else if (strcmp(event_name, "librbd:aio_read_enter") == 0) { + } else if (strcmp(event_name, "librbd:aio_read_enter") == 0 || + strcmp(event_name, "librbd:aio_read2_enter") == 0) { string name(fields.string("name")); string snap_name(fields.string("snap_name")); bool readonly = fields.int64("read_only"); @@ -446,7 +449,8 @@ private: m_ios.push_back(io); thread->issued_io(io, m_threads); m_pending_ios[completion] = io; - } else if (strcmp(event_name, "librbd:aio_write_enter") == 0) { + } else if (strcmp(event_name, "librbd:aio_write_enter") == 0 || + strcmp(event_name, "librbd:aio_write2_enter") == 0) { string name(fields.string("name")); string snap_name(fields.string("snap_name")); bool readonly = fields.int64("read_only");