From: David Woodhouse , Dave Jones Add a missing unlock. --- drivers/mtd/mtd_blkdevs.c | 2 ++ 1 files changed, 2 insertions(+) diff -puN drivers/mtd/mtd_blkdevs.c~mtd-locking-fix drivers/mtd/mtd_blkdevs.c --- 25/drivers/mtd/mtd_blkdevs.c~mtd-locking-fix 2004-02-25 11:54:29.000000000 -0800 +++ 25-akpm/drivers/mtd/mtd_blkdevs.c 2004-02-25 11:54:29.000000000 -0800 @@ -131,6 +131,8 @@ static int mtd_blktrans_thread(void *arg end_request(req, res); } + spin_unlock_irq(rq->queue_lock); + complete_and_exit(&tr->blkcore_priv->thread_dead, 0); } _