Lines Matching refs:rdev

191 static inline int is_badblock(struct md_rdev *rdev, sector_t s, int sectors,  in is_badblock()  argument
194 if (unlikely(rdev->badblocks.count)) { in is_badblock()
195 int rv = md_is_badblock(&rdev->badblocks, rdev->data_offset + s, in is_badblock()
199 *first_bad -= rdev->data_offset; in is_badblock()
204 extern int rdev_set_badblocks(struct md_rdev *rdev, sector_t s, int sectors,
206 extern int rdev_clear_badblocks(struct md_rdev *rdev, sector_t s, int sectors,
459 void (*sync_super)(struct mddev *mddev, struct md_rdev *rdev);
505 void (*error_handler)(struct mddev *mddev, struct md_rdev *rdev);
506 int (*hot_add_disk) (struct mddev *mddev, struct md_rdev *rdev);
507 int (*hot_remove_disk) (struct mddev *mddev, struct md_rdev *rdev);
564 static inline int sysfs_link_rdev(struct mddev *mddev, struct md_rdev *rdev) in sysfs_link_rdev() argument
567 if (!test_bit(Replacement, &rdev->flags) && mddev->kobj.sd) { in sysfs_link_rdev()
568 sprintf(nm, "rd%d", rdev->raid_disk); in sysfs_link_rdev()
569 return sysfs_create_link(&mddev->kobj, &rdev->kobj, nm); in sysfs_link_rdev()
574 static inline void sysfs_unlink_rdev(struct mddev *mddev, struct md_rdev *rdev) in sysfs_unlink_rdev() argument
577 if (!test_bit(Replacement, &rdev->flags) && mddev->kobj.sd) { in sysfs_unlink_rdev()
578 sprintf(nm, "rd%d", rdev->raid_disk); in sysfs_unlink_rdev()
587 #define rdev_for_each_list(rdev, tmp, head) \ argument
588 list_for_each_entry_safe(rdev, tmp, head, same_set)
593 #define rdev_for_each(rdev, mddev) \ argument
594 list_for_each_entry(rdev, &((mddev)->disks), same_set)
596 #define rdev_for_each_safe(rdev, tmp, mddev) \ argument
597 list_for_each_entry_safe(rdev, tmp, &((mddev)->disks), same_set)
599 #define rdev_for_each_rcu(rdev, mddev) \ argument
600 list_for_each_entry_rcu(rdev, &((mddev)->disks), same_set)
637 extern void md_error(struct mddev *mddev, struct md_rdev *rdev);
642 extern void md_super_write(struct mddev *mddev, struct md_rdev *rdev,
645 extern int sync_page_io(struct md_rdev *rdev, sector_t sector, int size,
650 extern void md_wait_for_blocked_rdev(struct md_rdev *rdev, struct mddev *mddev);
654 extern void md_integrity_add_rdev(struct md_rdev *rdev, struct mddev *mddev);
661 extern int md_rdev_init(struct md_rdev *rdev);
662 extern void md_rdev_clear(struct md_rdev *rdev);
674 extern void md_kick_rdev_from_array(struct md_rdev * rdev);
682 static inline void rdev_dec_pending(struct md_rdev *rdev, struct mddev *mddev) in rdev_dec_pending() argument
684 int faulty = test_bit(Faulty, &rdev->flags); in rdev_dec_pending()
685 if (atomic_dec_and_test(&rdev->nr_pending) && faulty) { in rdev_dec_pending()