X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fceph%2Fsrc%2Ftest%2Fosdc%2FFakeWriteback.cc;fp=src%2Fceph%2Fsrc%2Ftest%2Fosdc%2FFakeWriteback.cc;h=0000000000000000000000000000000000000000;hb=7da45d65be36d36b880cc55c5036e96c24b53f00;hp=24a780288b3ae8629af8d3e0518e2425ea3735b3;hpb=691462d09d0987b47e112d6ee8740375df3c51b2;p=stor4nfv.git diff --git a/src/ceph/src/test/osdc/FakeWriteback.cc b/src/ceph/src/test/osdc/FakeWriteback.cc deleted file mode 100644 index 24a7802..0000000 --- a/src/ceph/src/test/osdc/FakeWriteback.cc +++ /dev/null @@ -1,94 +0,0 @@ -// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*- -// vim: ts=8 sw=2 smarttab - -#include -#include - -#include -#include "common/debug.h" -#include "common/Cond.h" -#include "common/Finisher.h" -#include "common/Mutex.h" -#include "include/assert.h" -#include "common/ceph_time.h" - -#include "FakeWriteback.h" - -#define dout_subsys ceph_subsys_objectcacher -#undef dout_prefix -#define dout_prefix *_dout << "FakeWriteback(" << this << ") " - -class C_Delay : public Context { - CephContext *m_cct; - Context *m_con; - ceph::timespan m_delay; - Mutex *m_lock; - bufferlist *m_bl; - uint64_t m_off; - -public: - C_Delay(CephContext *cct, Context *c, Mutex *lock, uint64_t off, - bufferlist *pbl, uint64_t delay_ns=0) - : m_cct(cct), m_con(c), m_delay(delay_ns * std::chrono::nanoseconds(1)), - m_lock(lock), m_bl(pbl), m_off(off) {} - void finish(int r) override { - std::this_thread::sleep_for(m_delay); - if (m_bl) { - buffer::ptr bp(r); - bp.zero(); - m_bl->append(bp); - ldout(m_cct, 20) << "finished read " << m_off << "~" << r << dendl; - } - m_lock->Lock(); - m_con->complete(r); - m_lock->Unlock(); - } -}; - -FakeWriteback::FakeWriteback(CephContext *cct, Mutex *lock, uint64_t delay_ns) - : m_cct(cct), m_lock(lock), m_delay_ns(delay_ns) -{ - m_finisher = new Finisher(cct); - m_finisher->start(); -} - -FakeWriteback::~FakeWriteback() -{ - m_finisher->stop(); - delete m_finisher; -} - -void FakeWriteback::read(const object_t& oid, uint64_t object_no, - const object_locator_t& oloc, - uint64_t off, uint64_t len, snapid_t snapid, - bufferlist *pbl, uint64_t trunc_size, - __u32 trunc_seq, int op_flags, - const ZTracer::Trace &parent_trace, - Context *onfinish) -{ - C_Delay *wrapper = new C_Delay(m_cct, onfinish, m_lock, off, pbl, - m_delay_ns); - m_finisher->queue(wrapper, len); -} - -ceph_tid_t FakeWriteback::write(const object_t& oid, - const object_locator_t& oloc, - uint64_t off, uint64_t len, - const SnapContext& snapc, - const bufferlist &bl, ceph::real_time mtime, - uint64_t trunc_size, __u32 trunc_seq, - ceph_tid_t journal_tid, - const ZTracer::Trace &parent_trace, - Context *oncommit) -{ - C_Delay *wrapper = new C_Delay(m_cct, oncommit, m_lock, off, NULL, - m_delay_ns); - m_finisher->queue(wrapper, 0); - return ++m_tid; -} - -bool FakeWriteback::may_copy_on_write(const object_t&, uint64_t, uint64_t, - snapid_t) -{ - return false; -}