The patch titled raid6_end_write_request() spinlock fix has been added to the -mm tree. Its filename is raid6_end_write_request-spinlock-fix.patch See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find out what to do about this From: Coywolf Qi Hunt <qiyong@xxxxxxxxx> Reduce the raid6_end_write_request() spinlock window. Signed-off-by: Coywolf Qi Hunt <qiyong@xxxxxxxxx> Cc: Neil Brown <neilb@xxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- drivers/md/raid6main.c | 7 ++----- 1 files changed, 2 insertions(+), 5 deletions(-) diff -puN drivers/md/raid6main.c~raid6_end_write_request-spinlock-fix drivers/md/raid6main.c --- devel/drivers/md/raid6main.c~raid6_end_write_request-spinlock-fix 2006-04-24 20:39:29.000000000 -0700 +++ devel-akpm/drivers/md/raid6main.c 2006-04-24 20:39:29.000000000 -0700 @@ -468,7 +468,6 @@ static int raid6_end_write_request (stru struct stripe_head *sh = bi->bi_private; raid6_conf_t *conf = sh->raid_conf; int disks = conf->raid_disks, i; - unsigned long flags; int uptodate = test_bit(BIO_UPTODATE, &bi->bi_flags); if (bi->bi_size) @@ -486,16 +485,14 @@ static int raid6_end_write_request (stru return 0; } - spin_lock_irqsave(&conf->device_lock, flags); if (!uptodate) md_error(conf->mddev, conf->disks[i].rdev); rdev_dec_pending(conf->disks[i].rdev, conf->mddev); - clear_bit(R5_LOCKED, &sh->dev[i].flags); set_bit(STRIPE_HANDLE, &sh->state); - __release_stripe(conf, sh); - spin_unlock_irqrestore(&conf->device_lock, flags); + release_stripe(sh); + return 0; } _ Patches currently in -mm which might be from qiyong@xxxxxxxxx are raid5_unplug_device-fix.patch raid5_end_write_request-spinlock-fix.patch raid6_end_write_request-spinlock-fix.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html