diff options
author | Greg Kroah-Hartman <gregkh@suse.de> | 2006-01-06 15:59:59 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2006-01-06 15:59:59 -0500 |
commit | ccf18968b1bbc2fb117190a1984ac2a826dac228 (patch) | |
tree | 7bc8fbf5722aecf1e84fa50c31c657864cba1daa /include/linux/raid/raid1.h | |
parent | e91c021c487110386a07facd0396e6c3b7cf9c1f (diff) | |
parent | d99cf9d679a520d67f81d805b7cb91c68e1847f0 (diff) |
Merge ../torvalds-2.6/
Diffstat (limited to 'include/linux/raid/raid1.h')
-rw-r--r-- | include/linux/raid/raid1.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/include/linux/raid/raid1.h b/include/linux/raid/raid1.h index 292b98f2b408..9d5494aaac0f 100644 --- a/include/linux/raid/raid1.h +++ b/include/linux/raid/raid1.h | |||
@@ -45,6 +45,8 @@ struct r1_private_data_s { | |||
45 | 45 | ||
46 | spinlock_t resync_lock; | 46 | spinlock_t resync_lock; |
47 | int nr_pending; | 47 | int nr_pending; |
48 | int nr_waiting; | ||
49 | int nr_queued; | ||
48 | int barrier; | 50 | int barrier; |
49 | sector_t next_resync; | 51 | sector_t next_resync; |
50 | int fullsync; /* set to 1 if a full sync is needed, | 52 | int fullsync; /* set to 1 if a full sync is needed, |
@@ -52,11 +54,12 @@ struct r1_private_data_s { | |||
52 | * Cleared when a sync completes. | 54 | * Cleared when a sync completes. |
53 | */ | 55 | */ |
54 | 56 | ||
55 | wait_queue_head_t wait_idle; | 57 | wait_queue_head_t wait_barrier; |
56 | wait_queue_head_t wait_resume; | ||
57 | 58 | ||
58 | struct pool_info *poolinfo; | 59 | struct pool_info *poolinfo; |
59 | 60 | ||
61 | struct page *tmppage; | ||
62 | |||
60 | mempool_t *r1bio_pool; | 63 | mempool_t *r1bio_pool; |
61 | mempool_t *r1buf_pool; | 64 | mempool_t *r1buf_pool; |
62 | }; | 65 | }; |
@@ -106,6 +109,13 @@ struct r1bio_s { | |||
106 | /* DO NOT PUT ANY NEW FIELDS HERE - bios array is contiguously alloced*/ | 109 | /* DO NOT PUT ANY NEW FIELDS HERE - bios array is contiguously alloced*/ |
107 | }; | 110 | }; |
108 | 111 | ||
112 | /* when we get a read error on a read-only array, we redirect to another | ||
113 | * device without failing the first device, or trying to over-write to | ||
114 | * correct the read error. To keep track of bad blocks on a per-bio | ||
115 | * level, we store IO_BLOCKED in the appropriate 'bios' pointer | ||
116 | */ | ||
117 | #define IO_BLOCKED ((struct bio*)1) | ||
118 | |||
109 | /* bits for r1bio.state */ | 119 | /* bits for r1bio.state */ |
110 | #define R1BIO_Uptodate 0 | 120 | #define R1BIO_Uptodate 0 |
111 | #define R1BIO_IsSync 1 | 121 | #define R1BIO_IsSync 1 |