blkcg: change a spin_lock() to spin_lock_irq()
authorDan Carpenter <dan.carpenter@oracle.com>
Thu, 29 Mar 2012 18:57:08 +0000 (20:57 +0200)
committerJens Axboe <axboe@kernel.dk>
Thu, 29 Mar 2012 18:57:08 +0000 (20:57 +0200)
Smatch complains that we re-enable IRQs twice.  It looks like we forgot
to disable them here on the spin_trylock() failure path.  This was added
in 9f13ef678e "blkcg: use double locking instead of RCU for blkg
synchronization".

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>`
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/blk-cgroup.c

index a74019b..aa54c41 100644 (file)
@@ -1601,7 +1601,7 @@ static int blkiocg_pre_destroy(struct cgroup_subsys *subsys,
                } else {
                        spin_unlock_irq(&blkcg->lock);
                        cpu_relax();
-                       spin_lock(&blkcg->lock);
+                       spin_lock_irq(&blkcg->lock);
                }
        }