diff options
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/raid/raid5.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/include/linux/raid/raid5.h b/include/linux/raid/raid5.h index d8286db60b96..b99d354f6128 100644 --- a/include/linux/raid/raid5.h +++ b/include/linux/raid/raid5.h | |||
| @@ -145,6 +145,22 @@ struct stripe_head { | |||
| 145 | unsigned long flags; | 145 | unsigned long flags; |
| 146 | } dev[1]; /* allocated with extra space depending of RAID geometry */ | 146 | } dev[1]; /* allocated with extra space depending of RAID geometry */ |
| 147 | }; | 147 | }; |
| 148 | |||
| 149 | /* stripe_head_state - collects and tracks the dynamic state of a stripe_head | ||
| 150 | * for handle_stripe. It is only valid under spin_lock(sh->lock); | ||
| 151 | */ | ||
| 152 | struct stripe_head_state { | ||
| 153 | int syncing, expanding, expanded; | ||
| 154 | int locked, uptodate, to_read, to_write, failed, written; | ||
| 155 | int non_overwrite; | ||
| 156 | int failed_num; | ||
| 157 | }; | ||
| 158 | |||
| 159 | /* r6_state - extra state data only relevant to r6 */ | ||
| 160 | struct r6_state { | ||
| 161 | int p_failed, q_failed, qd_idx, failed_num[2]; | ||
| 162 | }; | ||
| 163 | |||
| 148 | /* Flags */ | 164 | /* Flags */ |
| 149 | #define R5_UPTODATE 0 /* page contains current data */ | 165 | #define R5_UPTODATE 0 /* page contains current data */ |
| 150 | #define R5_LOCKED 1 /* IO has been submitted on "req" */ | 166 | #define R5_LOCKED 1 /* IO has been submitted on "req" */ |
