]>
git.proxmox.com Git - ceph.git/blob - ceph/src/test/osdc/FakeWriteback.h
1 // -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
2 // vim: ts=8 sw=2 smarttab
3 #ifndef CEPH_TEST_OSDC_FAKEWRITEBACK_H
4 #define CEPH_TEST_OSDC_FAKEWRITEBACK_H
6 #include "include/Context.h"
7 #include "include/types.h"
8 #include "osd/osd_types.h"
9 #include "osdc/WritebackHandler.h"
16 class FakeWriteback
: public WritebackHandler
{
18 FakeWriteback(CephContext
*cct
, Mutex
*lock
, uint64_t delay_ns
);
19 ~FakeWriteback() override
;
21 void read(const object_t
& oid
, uint64_t object_no
,
22 const object_locator_t
& oloc
, uint64_t off
, uint64_t len
,
23 snapid_t snapid
, bufferlist
*pbl
, uint64_t trunc_size
,
24 __u32 trunc_seq
, int op_flags
,
25 const ZTracer::Trace
&parent_trace
,
26 Context
*onfinish
) override
;
28 ceph_tid_t
write(const object_t
& oid
, const object_locator_t
& oloc
,
29 uint64_t off
, uint64_t len
,
30 const SnapContext
& snapc
, const bufferlist
&bl
,
31 ceph::real_time mtime
, uint64_t trunc_size
,
32 __u32 trunc_seq
, ceph_tid_t journal_tid
,
33 const ZTracer::Trace
&parent_trace
,
34 Context
*oncommit
) override
;
36 using WritebackHandler::write
;
38 bool may_copy_on_write(const object_t
&, uint64_t, uint64_t,
44 std::atomic
<unsigned> m_tid
= { 0 };