1#ifndef _CFQ_H 2#define _CFQ_H 3#include "blk-cgroup.h" 4 5#ifdef CONFIG_CFQ_GROUP_IOSCHED 6static inline void cfq_blkiocg_update_io_add_stats(struct blkio_group *blkg, 7 struct blkio_group *curr_blkg, bool direction, bool sync) 8{ 9 blkiocg_update_io_add_stats(blkg, curr_blkg, direction, sync); 10} 11 12static inline void cfq_blkiocg_update_dequeue_stats(struct blkio_group *blkg, 13 unsigned long dequeue) 14{ 15 blkiocg_update_dequeue_stats(blkg, dequeue); 16} 17 18static inline void cfq_blkiocg_update_timeslice_used(struct blkio_group *blkg, 19 unsigned long time) 20{ 21 blkiocg_update_timeslice_used(blkg, time); 22} 23 24static inline void cfq_blkiocg_set_start_empty_time(struct blkio_group *blkg) 25{ 26 blkiocg_set_start_empty_time(blkg); 27} 28 29static inline void cfq_blkiocg_update_io_remove_stats(struct blkio_group *blkg, 30 bool direction, bool sync) 31{ 32 blkiocg_update_io_remove_stats(blkg, direction, sync); 33} 34 35static inline void cfq_blkiocg_update_io_merged_stats(struct blkio_group *blkg, 36 bool direction, bool sync) 37{ 38 blkiocg_update_io_merged_stats(blkg, direction, sync); 39} 40 41static inline void cfq_blkiocg_update_idle_time_stats(struct blkio_group *blkg) 42{ 43 blkiocg_update_idle_time_stats(blkg); 44} 45 46static inline void 47cfq_blkiocg_update_avg_queue_size_stats(struct blkio_group *blkg) 48{ 49 blkiocg_update_avg_queue_size_stats(blkg); 50} 51 52static inline void 53cfq_blkiocg_update_set_idle_time_stats(struct blkio_group *blkg) 54{ 55 blkiocg_update_set_idle_time_stats(blkg); 56} 57 58static inline void cfq_blkiocg_update_dispatch_stats(struct blkio_group *blkg, 59 uint64_t bytes, bool direction, bool sync) 60{ 61 blkiocg_update_dispatch_stats(blkg, bytes, direction, sync); 62} 63 64static inline void cfq_blkiocg_update_completion_stats(struct blkio_group *blkg, uint64_t start_time, uint64_t io_start_time, bool direction, bool sync) 65{ 66 blkiocg_update_completion_stats(blkg, start_time, io_start_time, 67 direction, sync); 68} 69 70static inline void cfq_blkiocg_add_blkio_group(struct blkio_cgroup *blkcg, 71 struct blkio_group *blkg, void *key, dev_t dev) { 72 blkiocg_add_blkio_group(blkcg, blkg, key, dev); 73} 74 75static inline int cfq_blkiocg_del_blkio_group(struct blkio_group *blkg) 76{ 77 return blkiocg_del_blkio_group(blkg); 78} 79 80#else /* CFQ_GROUP_IOSCHED */ 81static inline void cfq_blkiocg_update_io_add_stats(struct blkio_group *blkg, 82 struct blkio_group *curr_blkg, bool direction, bool sync) {} 83 84static inline void cfq_blkiocg_update_dequeue_stats(struct blkio_group *blkg, 85 unsigned long dequeue) {} 86 87static inline void cfq_blkiocg_update_timeslice_used(struct blkio_group *blkg, 88 unsigned long time) {} 89static inline void cfq_blkiocg_set_start_empty_time(struct blkio_group *blkg) {} 90static inline void cfq_blkiocg_update_io_remove_stats(struct blkio_group *blkg, 91 bool direction, bool sync) {} 92static inline void cfq_blkiocg_update_io_merged_stats(struct blkio_group *blkg, 93 bool direction, bool sync) {} 94static inline void cfq_blkiocg_update_idle_time_stats(struct blkio_group *blkg) 95{ 96} 97static inline void 98cfq_blkiocg_update_avg_queue_size_stats(struct blkio_group *blkg) {} 99 100static inline void 101cfq_blkiocg_update_set_idle_time_stats(struct blkio_group *blkg) {} 102 103static inline void cfq_blkiocg_update_dispatch_stats(struct blkio_group *blkg, 104 uint64_t bytes, bool direction, bool sync) {} 105static inline void cfq_blkiocg_update_completion_stats(struct blkio_group *blkg, uint64_t start_time, uint64_t io_start_time, bool direction, bool sync) {} 106 107static inline void cfq_blkiocg_add_blkio_group(struct blkio_cgroup *blkcg, 108 struct blkio_group *blkg, void *key, dev_t dev) {} 109static inline int cfq_blkiocg_del_blkio_group(struct blkio_group *blkg) 110{ 111 return 0; 112} 113 114#endif /* CFQ_GROUP_IOSCHED */ 115#endif 116