summaryrefslogblamecommitdiffstats
path: root/block/cfq.h
blob: 2a155927e37ce50a936019cecab31805945c4e45 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

















                                                                              
                                                                           
 
                                                                    











































                                                                                                                                                        
                                                                        




                                                                          
                                                                          














                                                                              
                                                                              


























                                                                                                                                                           
#ifndef _CFQ_H
#define _CFQ_H
#include "blk-cgroup.h"

#ifdef CONFIG_CFQ_GROUP_IOSCHED
static inline void cfq_blkiocg_update_io_add_stats(struct blkio_group *blkg,
	struct blkio_group *curr_blkg, bool direction, bool sync)
{
	blkiocg_update_io_add_stats(blkg, curr_blkg, direction, sync);
}

static inline void cfq_blkiocg_update_dequeue_stats(struct blkio_group *blkg,
			unsigned long dequeue)
{
	blkiocg_update_dequeue_stats(blkg, dequeue);
}

static inline void cfq_blkiocg_update_timeslice_used(struct blkio_group *blkg,
			unsigned long time, unsigned long unaccounted_time)
{
	blkiocg_update_timeslice_used(blkg, time, unaccounted_time);
}

static inline void cfq_blkiocg_set_start_empty_time(struct blkio_group *blkg)
{
	blkiocg_set_start_empty_time(blkg);
}

static inline void cfq_blkiocg_update_io_remove_stats(struct blkio_group *blkg,
				bool direction, bool sync)
{
	blkiocg_update_io_remove_stats(blkg, direction, sync);
}

static inline void cfq_blkiocg_update_io_merged_stats(struct blkio_group *blkg,
		bool direction, bool sync)
{
	blkiocg_update_io_merged_stats(blkg, direction, sync);
}

static inline void cfq_blkiocg_update_idle_time_stats(struct blkio_group *blkg)
{
	blkiocg_update_idle_time_stats(blkg);
}

static inline void
cfq_blkiocg_update_avg_queue_size_stats(struct blkio_group *blkg)
{
	blkiocg_update_avg_queue_size_stats(blkg);
}

static inline void
cfq_blkiocg_update_set_idle_time_stats(struct blkio_group *blkg)
{
	blkiocg_update_set_idle_time_stats(blkg);
}

static inline void cfq_blkiocg_update_dispatch_stats(struct blkio_group *blkg,
				uint64_t bytes, bool direction, bool sync)
{
	blkiocg_update_dispatch_stats(blkg, bytes, direction, sync);
}

static inline void cfq_blkiocg_update_completion_stats(struct blkio_group *blkg, uint64_t start_time, uint64_t io_start_time, bool direction, bool sync)
{
	blkiocg_update_completion_stats(blkg, start_time, io_start_time,
				direction, sync);
}

static inline void cfq_blkiocg_add_blkio_group(struct blkio_cgroup *blkcg,
			struct blkio_group *blkg, void *key, dev_t dev) {
	blkiocg_add_blkio_group(blkcg, blkg, key, dev, BLKIO_POLICY_PROP);
}

static inline int cfq_blkiocg_del_blkio_group(struct blkio_group *blkg)
{
	return blkiocg_del_blkio_group(blkg);
}

#else /* CFQ_GROUP_IOSCHED */
static inline void cfq_blkiocg_update_io_add_stats(struct blkio_group *blkg,
	struct blkio_group *curr_blkg, bool direction, bool sync) {}

static inline void cfq_blkiocg_update_dequeue_stats(struct blkio_group *blkg,
			unsigned long dequeue) {}

static inline void cfq_blkiocg_update_timeslice_used(struct blkio_group *blkg,
			unsigned long time, unsigned long unaccounted_time) {}
static inline void cfq_blkiocg_set_start_empty_time(struct blkio_group *blkg) {}
static inline void cfq_blkiocg_update_io_remove_stats(struct blkio_group *blkg,
				bool direction, bool sync) {}
static inline void cfq_blkiocg_update_io_merged_stats(struct blkio_group *blkg,
		bool direction, bool sync) {}
static inline void cfq_blkiocg_update_idle_time_stats(struct blkio_group *blkg)
{
}
static inline void
cfq_blkiocg_update_avg_queue_size_stats(struct blkio_group *blkg) {}

static inline void
cfq_blkiocg_update_set_idle_time_stats(struct blkio_group *blkg) {}

static inline void cfq_blkiocg_update_dispatch_stats(struct blkio_group *blkg,
				uint64_t bytes, bool direction, bool sync) {}
static inline void cfq_blkiocg_update_completion_stats(struct blkio_group *blkg, uint64_t start_time, uint64_t io_start_time, bool direction, bool sync) {}

static inline void cfq_blkiocg_add_blkio_group(struct blkio_cgroup *blkcg,
			struct blkio_group *blkg, void *key, dev_t dev) {}
static inline int cfq_blkiocg_del_blkio_group(struct blkio_group *blkg)
{
	return 0;
}

#endif /* CFQ_GROUP_IOSCHED */
#endif