#ifndef VDO_FLUSH_H
#define VDO_FLUSH_H
#include "funnel-workqueue.h"
#include "types.h"
#include "vio.h"
#include "wait-queue.h"
struct vdo_flush { … };
struct flusher;
int __must_check vdo_make_flusher(struct vdo *vdo);
void vdo_free_flusher(struct flusher *flusher);
thread_id_t __must_check vdo_get_flusher_thread_id(struct flusher *flusher);
void vdo_complete_flushes(struct flusher *flusher);
void vdo_dump_flusher(const struct flusher *flusher);
void vdo_launch_flush(struct vdo *vdo, struct bio *bio);
void vdo_drain_flusher(struct flusher *flusher, struct vdo_completion *completion);
void vdo_resume_flusher(struct flusher *flusher, struct vdo_completion *parent);
#endif