|
@@ -85,70 +85,6 @@ typedef struct mdk_rdev_s mdk_rdev_t;
|
|
|
|
|
|
#define MAX_CHUNK_SIZE (4096*1024)
|
|
|
|
|
|
-/*
|
|
|
- * default readahead
|
|
|
- */
|
|
|
-
|
|
|
-static inline int disk_faulty(mdp_disk_t * d)
|
|
|
-{
|
|
|
- return d->state & (1 << MD_DISK_FAULTY);
|
|
|
-}
|
|
|
-
|
|
|
-static inline int disk_active(mdp_disk_t * d)
|
|
|
-{
|
|
|
- return d->state & (1 << MD_DISK_ACTIVE);
|
|
|
-}
|
|
|
-
|
|
|
-static inline int disk_sync(mdp_disk_t * d)
|
|
|
-{
|
|
|
- return d->state & (1 << MD_DISK_SYNC);
|
|
|
-}
|
|
|
-
|
|
|
-static inline int disk_spare(mdp_disk_t * d)
|
|
|
-{
|
|
|
- return !disk_sync(d) && !disk_active(d) && !disk_faulty(d);
|
|
|
-}
|
|
|
-
|
|
|
-static inline int disk_removed(mdp_disk_t * d)
|
|
|
-{
|
|
|
- return d->state & (1 << MD_DISK_REMOVED);
|
|
|
-}
|
|
|
-
|
|
|
-static inline void mark_disk_faulty(mdp_disk_t * d)
|
|
|
-{
|
|
|
- d->state |= (1 << MD_DISK_FAULTY);
|
|
|
-}
|
|
|
-
|
|
|
-static inline void mark_disk_active(mdp_disk_t * d)
|
|
|
-{
|
|
|
- d->state |= (1 << MD_DISK_ACTIVE);
|
|
|
-}
|
|
|
-
|
|
|
-static inline void mark_disk_sync(mdp_disk_t * d)
|
|
|
-{
|
|
|
- d->state |= (1 << MD_DISK_SYNC);
|
|
|
-}
|
|
|
-
|
|
|
-static inline void mark_disk_spare(mdp_disk_t * d)
|
|
|
-{
|
|
|
- d->state = 0;
|
|
|
-}
|
|
|
-
|
|
|
-static inline void mark_disk_removed(mdp_disk_t * d)
|
|
|
-{
|
|
|
- d->state = (1 << MD_DISK_FAULTY) | (1 << MD_DISK_REMOVED);
|
|
|
-}
|
|
|
-
|
|
|
-static inline void mark_disk_inactive(mdp_disk_t * d)
|
|
|
-{
|
|
|
- d->state &= ~(1 << MD_DISK_ACTIVE);
|
|
|
-}
|
|
|
-
|
|
|
-static inline void mark_disk_nonsync(mdp_disk_t * d)
|
|
|
-{
|
|
|
- d->state &= ~(1 << MD_DISK_SYNC);
|
|
|
-}
|
|
|
-
|
|
|
/*
|
|
|
* MD's 'extended' device
|
|
|
*/
|