#ifndef CEPH_LIBRBD_JOURNAL_UTILS_H
#define CEPH_LIBRBD_JOURNAL_UTILS_H
+#include "include/common_fwd.h"
#include "include/int_types.h"
#include "include/Context.h"
#include "cls/journal/cls_journal_types.h"
#include <list>
-struct CephContext;
-struct Mutex;
namespace librbd {
namespace journal {
struct C_DecodeTag : public Context {
CephContext *cct;
- Mutex *lock;
+ ceph::mutex *lock;
uint64_t *tag_tid;
TagData *tag_data;
Context *on_finish;
cls::journal::Tag tag;
- C_DecodeTag(CephContext *cct, Mutex *lock, uint64_t *tag_tid,
+ C_DecodeTag(CephContext *cct, ceph::mutex *lock, uint64_t *tag_tid,
TagData *tag_data, Context *on_finish)
: cct(cct), lock(lock), tag_tid(tag_tid), tag_data(tag_data),
on_finish(on_finish) {
typedef std::list<cls::journal::Tag> Tags;
CephContext *cct;
- Mutex *lock;
+ ceph::mutex *lock;
uint64_t *tag_tid;
TagData *tag_data;
Context *on_finish;
Tags tags;
- C_DecodeTags(CephContext *cct, Mutex *lock, uint64_t *tag_tid,
+ C_DecodeTags(CephContext *cct, ceph::mutex *lock, uint64_t *tag_tid,
TagData *tag_data, Context *on_finish)
: cct(cct), lock(lock), tag_tid(tag_tid), tag_data(tag_data),
on_finish(on_finish) {