Lines Matching defs:mddev

43 	struct mddev *mddev;		/* RAID array if running */  member
196 struct mddev { struct
197 void *private;
198 struct md_personality *pers;
199 dev_t unit;
200 int md_minor;
201 struct list_head disks;
202 unsigned long flags;
208 int suspended;
209 atomic_t active_io;
210 int ro;
211 int sysfs_active; /* set when sysfs deletes
215 int ready; /* See when safe to pass
217 struct gendisk *gendisk;
219 struct kobject kobj;
220 int hold_active;
225 int major_version,
226 minor_version,
227 patch_version;
228 int persistent;
229 int external; /* metadata is
231 char metadata_type[17]; /* externally set*/
232 int chunk_sectors;
233 time_t ctime, utime;
234 int level, layout;
235 char clevel[16];
236 int raid_disks;
237 int max_disks;
238 sector_t dev_sectors; /* used size of
240 sector_t array_sectors; /* exported array size */
241 int external_size; /* size managed
243 __u64 events;
249 int can_decrease_events;
251 char uuid[16];
258 sector_t reshape_position;
259 int delta_disks, new_level, new_layout;
260 int new_chunk_sectors;
262 atomic_t plug_cnt; /* If device is expecting
265 struct md_thread *thread; /* management thread */
266 struct md_thread *sync_thread; /* doing resync or reconstruct */
267 sector_t curr_resync; /* last block scheduled */
274 sector_t curr_resync_completed;
275 unsigned long resync_mark; /* a recent timestamp */
276 sector_t resync_mark_cnt;/* blocks written at resync_mark */
277 sector_t curr_mark_cnt; /* blocks scheduled now */
279 sector_t resync_max_sectors; /* may be set by personality */
281 sector_t resync_mismatches; /* count of sectors where
286 sector_t suspend_lo;
287 sector_t suspend_hi;
289 int sync_speed_min;
290 int sync_speed_max;
293 int parallel_resync;
295 int ok_start_degraded;
320 unsigned long recovery;
326 int recovery_disabled;
328 int in_sync; /* know to not need resync */
338 struct mutex open_mutex;
339 struct mutex reconfig_mutex;
340 atomic_t active; /* general refcount */
341 atomic_t openers; /* number of active opens */
343 int changed; /* True if we might need to
345 int degraded; /* whether md should consider
349 atomic_t recovery_active; /* blocks scheduled, but not written */
350 wait_queue_head_t recovery_wait;
351 sector_t recovery_cp;
352 sector_t resync_min; /* user requested sync
354 sector_t resync_max; /* resync should pause
357 struct sysfs_dirent *sysfs_state; /* handle for 'array_state'
360 struct sysfs_dirent *sysfs_action; /* handle for 'sync_action' */
362 struct work_struct del_work; /* used for delayed sysfs removal */
364 spinlock_t write_lock;
365 wait_queue_head_t sb_wait; /* for waiting on superblock updates */
366 atomic_t pending_writes; /* number of active superblock writes */
368 unsigned int safemode; /* if set, update "clean" superblock
371 unsigned int safemode_delay;
372 struct timer_list safemode_timer;
373 atomic_t writes_pending;
397 struct list_head all_mddevs; argument
411 void (*sync_super)(struct mddev *mddev, struct md_rdev *rdev); argument
415 static inline void rdev_dec_pending(struct md_rdev *rdev, struct mddev *mddev) in rdev_dec_pending()
488 static inline char * mdname (struct mddev * mddev) in mdname()
493 static inline int sysfs_link_rdev(struct mddev *mddev, struct md_rdev *rdev) in sysfs_link_rdev()
503 static inline void sysfs_unlink_rdev(struct mddev *mddev, struct md_rdev *rdev) in sysfs_unlink_rdev()
522 #define rdev_for_each(rdev, tmp, mddev) \ argument
525 #define rdev_for_each_rcu(rdev, mddev) \ argument
530 struct mddev *mddev; member