aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeil Brown <neilb@suse.de>2007-11-05 17:51:02 -0500
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-11-05 18:12:32 -0500
commitdef6ae26a9e69c3e6d0f0054524c76fd32420ecd (patch)
tree3688a3d5d8507835e0f55fb3e3d83b52cfa049a7
parent139b82984af5a98e4b03fd01616d79fc4970128a (diff)
md: fix misapplied patch in raid5.c
commit 4ae3f847e49e3787eca91bced31f8fd328d50496 ("md: raid5: fix clearing of biofill operations") did not get applied correctly, presumably due to substantial similarities between handle_stripe5 and handle_stripe6. This patch moves the chunk of new code from handle_stripe6 (where it isn't needed (yet)) to handle_stripe5. Signed-off-by: Neil Brown <neilb@suse.de> Cc: "Dan Williams" <dan.j.williams@intel.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--drivers/md/raid5.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/md/raid5.c b/drivers/md/raid5.c
index 80a67d789b72..82af3465a900 100644
--- a/drivers/md/raid5.c
+++ b/drivers/md/raid5.c
@@ -2624,6 +2624,13 @@ static void handle_stripe5(struct stripe_head *sh)
2624 s.expanded = test_bit(STRIPE_EXPAND_READY, &sh->state); 2624 s.expanded = test_bit(STRIPE_EXPAND_READY, &sh->state);
2625 /* Now to look around and see what can be done */ 2625 /* Now to look around and see what can be done */
2626 2626
2627 /* clean-up completed biofill operations */
2628 if (test_bit(STRIPE_OP_BIOFILL, &sh->ops.complete)) {
2629 clear_bit(STRIPE_OP_BIOFILL, &sh->ops.pending);
2630 clear_bit(STRIPE_OP_BIOFILL, &sh->ops.ack);
2631 clear_bit(STRIPE_OP_BIOFILL, &sh->ops.complete);
2632 }
2633
2627 rcu_read_lock(); 2634 rcu_read_lock();
2628 for (i=disks; i--; ) { 2635 for (i=disks; i--; ) {
2629 mdk_rdev_t *rdev; 2636 mdk_rdev_t *rdev;
@@ -2897,13 +2904,6 @@ static void handle_stripe6(struct stripe_head *sh, struct page *tmp_page)
2897 s.expanded = test_bit(STRIPE_EXPAND_READY, &sh->state); 2904 s.expanded = test_bit(STRIPE_EXPAND_READY, &sh->state);
2898 /* Now to look around and see what can be done */ 2905 /* Now to look around and see what can be done */
2899 2906
2900 /* clean-up completed biofill operations */
2901 if (test_bit(STRIPE_OP_BIOFILL, &sh->ops.complete)) {
2902 clear_bit(STRIPE_OP_BIOFILL, &sh->ops.pending);
2903 clear_bit(STRIPE_OP_BIOFILL, &sh->ops.ack);
2904 clear_bit(STRIPE_OP_BIOFILL, &sh->ops.complete);
2905 }
2906
2907 rcu_read_lock(); 2907 rcu_read_lock();
2908 for (i=disks; i--; ) { 2908 for (i=disks; i--; ) {
2909 mdk_rdev_t *rdev; 2909 mdk_rdev_t *rdev;