md: use list_for_each_entry macro directly
[deliverable/linux.git] / include / linux / raid / md_k.h
index 663803eaf0deceb6150f9f71d1fc6fb72e53cac3..8f9a54c1fb0e8c19f7400521043bf00c7b2f2f5f 100644 (file)
@@ -335,17 +335,14 @@ static inline char * mdname (mddev_t * mddev)
  * iterates through some rdev ringlist. It's safe to remove the
  * current 'rdev'. Dont touch 'tmp' though.
  */
-#define rdev_for_each_list(rdev, tmp, list)                            \
-                                                                       \
-       for ((tmp) = (list).next;                                       \
-               (rdev) = (list_entry((tmp), mdk_rdev_t, same_set)),     \
-                       (tmp) = (tmp)->next, (tmp)->prev != &(list)     \
-               ; )
+#define rdev_for_each_list(rdev, tmp, head)                            \
+       list_for_each_entry_safe(rdev, tmp, head, same_set)
+
 /*
  * iterates through the 'same array disks' ringlist
  */
 #define rdev_for_each(rdev, tmp, mddev)                                \
-       rdev_for_each_list(rdev, tmp, (mddev)->disks)
+       list_for_each_entry_safe(rdev, tmp, &((mddev)->disks), same_set)
 
 #define rdev_for_each_rcu(rdev, mddev)                         \
        list_for_each_entry_rcu(rdev, &((mddev)->disks), same_set)
This page took 0.039062 seconds and 5 git commands to generate.