Lines Matching refs:mddev
80 typedef void (md_bitmap_fn)(struct mddev *mddev, sector_t offset,
87 int (*create)(struct mddev *mddev);
88 int (*resize)(struct mddev *mddev, sector_t blocks, int chunksize);
90 int (*load)(struct mddev *mddev);
91 void (*destroy)(struct mddev *mddev);
92 void (*flush)(struct mddev *mddev);
93 void (*write_all)(struct mddev *mddev);
94 void (*dirty_bits)(struct mddev *mddev, unsigned long s,
96 void (*unplug)(struct mddev *mddev, bool sync);
97 void (*daemon_work)(struct mddev *mddev);
99 void (*start_behind_write)(struct mddev *mddev);
100 void (*end_behind_write)(struct mddev *mddev);
101 void (*wait_behind_writes)(struct mddev *mddev);
108 sector_t (*skip_sync_blocks)(struct mddev *mddev, sector_t offset);
109 bool (*blocks_synced)(struct mddev *mddev, sector_t offset);
110 bool (*start_sync)(struct mddev *mddev, sector_t offset,
112 void (*end_sync)(struct mddev *mddev, sector_t offset, sector_t *blocks);
113 void (*cond_end_sync)(struct mddev *mddev, sector_t sector, bool force);
114 void (*close_sync)(struct mddev *mddev);
119 void (*sync_with_cluster)(struct mddev *mddev,
122 void *(*get_from_slot)(struct mddev *mddev, int slot);
123 int (*copy_from_slot)(struct mddev *mddev, int slot, sector_t *lo,
132 static inline bool md_bitmap_registered(struct mddev *mddev) in md_bitmap_registered() argument
134 return mddev->bitmap_ops != NULL; in md_bitmap_registered()
137 static inline bool md_bitmap_enabled(struct mddev *mddev, bool flush) in md_bitmap_enabled() argument
140 if (!md_bitmap_registered(mddev)) in md_bitmap_enabled()
143 if (!mddev->bitmap) in md_bitmap_enabled()
146 return mddev->bitmap_ops->enabled(mddev->bitmap, flush); in md_bitmap_enabled()
149 static inline bool md_bitmap_start_sync(struct mddev *mddev, sector_t offset, in md_bitmap_start_sync() argument
153 if (!md_bitmap_enabled(mddev, false)) { in md_bitmap_start_sync()
158 return mddev->bitmap_ops->start_sync(mddev, offset, blocks, degraded); in md_bitmap_start_sync()
161 static inline void md_bitmap_end_sync(struct mddev *mddev, sector_t offset, in md_bitmap_end_sync() argument
164 if (!md_bitmap_enabled(mddev, false)) { in md_bitmap_end_sync()
169 mddev->bitmap_ops->end_sync(mddev, offset, blocks); in md_bitmap_end_sync()