diff options
Diffstat (limited to 'include/linux/raid/md_k.h')
-rw-r--r-- | include/linux/raid/md_k.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/include/linux/raid/md_k.h b/include/linux/raid/md_k.h index 200c69e34fc0..11629f92180a 100644 --- a/include/linux/raid/md_k.h +++ b/include/linux/raid/md_k.h | |||
@@ -117,10 +117,10 @@ struct mdk_rdev_s | |||
117 | * It can never have faulty==1, in_sync==1 | 117 | * It can never have faulty==1, in_sync==1 |
118 | * This reduces the burden of testing multiple flags in many cases | 118 | * This reduces the burden of testing multiple flags in many cases |
119 | */ | 119 | */ |
120 | int faulty; /* if faulty do not issue IO requests */ | ||
121 | int in_sync; /* device is a full member of the array */ | ||
122 | 120 | ||
123 | unsigned long flags; /* Should include faulty and in_sync here. */ | 121 | unsigned long flags; |
122 | #define Faulty 1 /* device is known to have a fault */ | ||
123 | #define In_sync 2 /* device is in_sync with rest of array */ | ||
124 | #define WriteMostly 4 /* Avoid reading if at all possible */ | 124 | #define WriteMostly 4 /* Avoid reading if at all possible */ |
125 | 125 | ||
126 | int desc_nr; /* descriptor index in the superblock */ | 126 | int desc_nr; /* descriptor index in the superblock */ |
@@ -247,7 +247,7 @@ struct mddev_s | |||
247 | 247 | ||
248 | static inline void rdev_dec_pending(mdk_rdev_t *rdev, mddev_t *mddev) | 248 | static inline void rdev_dec_pending(mdk_rdev_t *rdev, mddev_t *mddev) |
249 | { | 249 | { |
250 | int faulty = rdev->faulty; | 250 | int faulty = test_bit(Faulty, &rdev->flags); |
251 | if (atomic_dec_and_test(&rdev->nr_pending) && faulty) | 251 | if (atomic_dec_and_test(&rdev->nr_pending) && faulty) |
252 | set_bit(MD_RECOVERY_NEEDED, &mddev->recovery); | 252 | set_bit(MD_RECOVERY_NEEDED, &mddev->recovery); |
253 | } | 253 | } |