Commit 191ea9b2 authored by NeilBrown's avatar NeilBrown Committed by Linus Torvalds

[PATCH] md: raid1 support for bitmap intent logging

Signed-off-by: default avatarNeil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent aa3163f8
This diff is collapsed.
...@@ -36,12 +36,21 @@ struct r1_private_data_s { ...@@ -36,12 +36,21 @@ struct r1_private_data_s {
spinlock_t device_lock; spinlock_t device_lock;
struct list_head retry_list; struct list_head retry_list;
/* queue pending writes and submit them on unplug */
struct bio_list pending_bio_list;
/* queue of writes that have been unplugged */
struct bio_list flushing_bio_list;
/* for use when syncing mirrors: */ /* for use when syncing mirrors: */
spinlock_t resync_lock; spinlock_t resync_lock;
int nr_pending; int nr_pending;
int barrier; int barrier;
sector_t next_resync; sector_t next_resync;
int fullsync; /* set to 1 if a full sync is needed,
* (fresh device added).
* Cleared when a sync completes.
*/
wait_queue_head_t wait_idle; wait_queue_head_t wait_idle;
wait_queue_head_t wait_resume; wait_queue_head_t wait_resume;
...@@ -85,14 +94,17 @@ struct r1bio_s { ...@@ -85,14 +94,17 @@ struct r1bio_s {
int read_disk; int read_disk;
struct list_head retry_list; struct list_head retry_list;
struct bitmap_update *bitmap_update;
/* /*
* if the IO is in WRITE direction, then multiple bios are used. * if the IO is in WRITE direction, then multiple bios are used.
* We choose the number when they are allocated. * We choose the number when they are allocated.
*/ */
struct bio *bios[0]; struct bio *bios[0];
/* DO NOT PUT ANY NEW FIELDS HERE - bios array is contiguously alloced*/
}; };
/* bits for r1bio.state */ /* bits for r1bio.state */
#define R1BIO_Uptodate 0 #define R1BIO_Uptodate 0
#define R1BIO_IsSync 1 #define R1BIO_IsSync 1
#define R1BIO_Degraded 2
#endif #endif
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment