Lines Matching defs:mddev
42 struct mddev *mddev; /* RAID array if running */ member
274 struct mddev { struct
275 void *private;
276 struct md_personality *pers;
277 dev_t unit;
278 int md_minor;
279 struct list_head disks;
280 unsigned long flags;
281 unsigned long sb_flags;
283 int suspended;
284 atomic_t active_io;
285 int ro;
286 int sysfs_active; /* set when sysfs deletes
290 struct gendisk *gendisk;
292 struct kobject kobj;
293 int hold_active;
298 int major_version,
299 minor_version,
300 patch_version;
301 int persistent;
302 int external; /* metadata is
304 char metadata_type[17]; /* externally set*/
305 int chunk_sectors;
306 time64_t ctime, utime;
307 int level, layout;
308 char clevel[16];
309 int raid_disks;
310 int max_disks;
311 sector_t dev_sectors; /* used size of
313 sector_t array_sectors; /* exported array size */
314 int external_size; /* size managed
316 __u64 events;
322 int can_decrease_events;
324 char uuid[16];
331 sector_t reshape_position;
332 int delta_disks, new_level, new_layout;
333 int new_chunk_sectors;
334 int reshape_backwards;
336 struct md_thread *thread; /* management thread */
337 struct md_thread *sync_thread; /* doing resync or reconstruct */
345 char *last_sync_action;
346 sector_t curr_resync; /* last block scheduled */
353 sector_t curr_resync_completed;
354 unsigned long resync_mark; /* a recent timestamp */
355 sector_t resync_mark_cnt;/* blocks written at resync_mark */
356 sector_t curr_mark_cnt; /* blocks scheduled now */
358 sector_t resync_max_sectors; /* may be set by personality */
360 atomic64_t resync_mismatches; /* count of sectors where
365 sector_t suspend_lo;
366 sector_t suspend_hi;
368 int sync_speed_min;
369 int sync_speed_max;
372 int parallel_resync;
374 int ok_start_degraded;
376 unsigned long recovery;
382 int recovery_disabled;
384 int in_sync; /* know to not need resync */
394 struct mutex open_mutex;
395 struct mutex reconfig_mutex;
396 atomic_t active; /* general refcount */
397 atomic_t openers; /* number of active opens */
399 int changed; /* True if we might need to
401 int degraded; /* whether md should consider
405 atomic_t recovery_active; /* blocks scheduled, but not written */
406 wait_queue_head_t recovery_wait;
407 sector_t recovery_cp;
408 sector_t resync_min; /* user requested sync
410 sector_t resync_max; /* resync should pause
413 struct kernfs_node *sysfs_state; /* handle for 'array_state'
416 struct kernfs_node *sysfs_action; /* handle for 'sync_action' */
418 struct work_struct del_work; /* used for delayed sysfs removal */
431 spinlock_t lock;
432 wait_queue_head_t sb_wait; /* for waiting on superblock updates */
433 atomic_t pending_writes; /* number of active superblock writes */
435 unsigned int safemode; /* if set, update "clean" superblock
438 unsigned int safemode_delay;
439 struct timer_list safemode_timer;
440 struct percpu_ref writes_pending;
441 int sync_checkers; /* # of threads checking writes_pending */
442 struct request_queue *queue; /* for plugging ... */
444 struct bitmap *bitmap; /* the bitmap for the device */
445 struct {
470 struct list_head all_mddevs; argument
491 void (*sync_super)(struct mddev *mddev, struct md_rdev *rdev); argument
492 struct md_cluster_info *cluster_info;
493 unsigned int good_device_nr; /* good device num within cluster raid */
518 static inline int __must_check mddev_lock(struct mddev *mddev) in mddev_lock()
526 static inline void mddev_lock_nointr(struct mddev *mddev) in mddev_lock_nointr()
531 static inline int mddev_trylock(struct mddev *mddev) in mddev_trylock()
618 static inline char * mdname (struct mddev * mddev) in mdname()
623 static inline int sysfs_link_rdev(struct mddev *mddev, struct md_rdev *rdev) in sysfs_link_rdev()
635 static inline void sysfs_unlink_rdev(struct mddev *mddev, struct md_rdev *rdev) in sysfs_unlink_rdev()
656 #define rdev_for_each(rdev, mddev) \ argument
659 #define rdev_for_each_safe(rdev, tmp, mddev) \ argument
662 #define rdev_for_each_rcu(rdev, mddev) \ argument
667 struct mddev *mddev; member
758 static inline void rdev_dec_pending(struct md_rdev *rdev, struct mddev *mddev) in rdev_dec_pending()
768 static inline int mddev_is_clustered(struct mddev *mddev) in mddev_is_clustered()
774 static inline void mddev_clear_unsupported_flags(struct mddev *mddev, in mddev_clear_unsupported_flags()
780 static inline void mddev_check_writesame(struct mddev *mddev, struct bio *bio) in mddev_check_writesame()
787 static inline void mddev_check_write_zeroes(struct mddev *mddev, struct bio *bio) in mddev_check_write_zeroes()