On Wednesday March 13, gody@master.slon.net wrote: > On Wed, 13 Mar 2002, Neil Brown wrote: > > > Could you tell me exactly what happened? > > cat /proc/mdstat stalls in D state. Can't be interrupted. > Ok, I think I have it. Any call to MD_BUG would try to claim some semaphores, but if they were already claim..... things freeze up. MD_BUG is called in a number of situations that aren't really bugs, like when you try to remove an active (i.e. not failed) drive from an array. It could be that you were hitting a benign BUG message and this was deadlocking. Please apply the following patch (which just removes lock from MD_BUG) and try again. Thanks. NeilBrown --- ./drivers/md/md.c 2002/03/14 00:37:07 1.2 +++ ./drivers/md/md.c 2002/03/14 00:37:19 @@ -872,8 +872,8 @@ printk("md: **********************************\n"); printk("md: * <COMPLETE RAID STATE PRINTOUT> *\n"); printk("md: **********************************\n"); - down(&all_mddevs_sem); - ITERATE_MDDEV_LOCK(mddev,tmp) { +/* down(&all_mddevs_sem); */ + ITERATE_MDDEV/*_LOCK*/(mddev,tmp) { printk("md%d: ", mdidx(mddev)); ITERATE_RDEV(mddev,rdev,tmp2) @@ -888,7 +888,7 @@ ITERATE_RDEV(mddev,rdev,tmp2) print_rdev(rdev); } - up(&all_mddevs_sem); +/* up(&all_mddevs_sem); */ printk("md: **********************************\n"); printk("\n"); } - To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html