diff options
| author | Neil Brown <neilb@cse.unsw.edu.au> | 2002-06-18 04:15:33 -0700 |
|---|---|---|
| committer | Linus Torvalds <torvalds@home.transmeta.com> | 2002-06-18 04:15:33 -0700 |
| commit | a0edc56a534b3528d85a585629846826c19c5703 (patch) | |
| tree | 536d845d3a1c9c70014a08d1e94d57c3eee8774a /include/linux | |
| parent | 9beeab321c66ddeae926b3c0f370561581126498 (diff) | |
[PATCH] md 2 of 22 - Make device plugging work for md/raid5
We embed a request_queue_t in the mddev structure and so
have a separate one for each mddev.
This is used for plugging (in raid5).
Given this embeded request_queue_t, md_make_request no-longer
needs to make from device number to mddev, but can map from
the queue to the mddev instead.
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/raid/md_k.h | 2 | ||||
| -rw-r--r-- | include/linux/raid/raid5.h | 5 |
2 files changed, 3 insertions, 4 deletions
diff --git a/include/linux/raid/md_k.h b/include/linux/raid/md_k.h index 7b270a50487e..94ed760bd221 100644 --- a/include/linux/raid/md_k.h +++ b/include/linux/raid/md_k.h @@ -214,6 +214,8 @@ struct mddev_s atomic_t recovery_active; /* blocks scheduled, but not written */ wait_queue_head_t recovery_wait; + request_queue_t queue; /* for plugging ... */ + struct list_head all_mddevs; }; diff --git a/include/linux/raid/raid5.h b/include/linux/raid/raid5.h index 5c25120581a7..661783287da5 100644 --- a/include/linux/raid/raid5.h +++ b/include/linux/raid/raid5.h @@ -176,7 +176,7 @@ struct stripe_head { * is put on a "delayed" queue until there are no stripes currently * in a pre-read phase. Further, if the "delayed" queue is empty when * a stripe is put on it then we "plug" the queue and do not process it - * until an unplg call is made. (the tq_disk list is run). + * until an unplug call is made. (blk_run_queues is run). * * When preread is initiated on a stripe, we set PREREAD_ACTIVE and add * it to the count of prereading stripes. @@ -228,9 +228,6 @@ struct raid5_private_data { * waiting for 25% to be free */ spinlock_t device_lock; - - int plugged; - struct tq_struct plug_tq; }; typedef struct raid5_private_data raid5_conf_t; |
