From: Mikulas Patocka Date: Fri, 21 Dec 2012 20:23:33 +0000 (+0000) Subject: dm snapshot: optimize track_chunk X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=9aa0c0e60ffc2594acaad23127dbea9f3b61821c;p=openwrt%2Fstaging%2Fblogic.git dm snapshot: optimize track_chunk track_chunk is always called with interrupts enabled. Consequently, we do not need to save and restore interrupt state in "flags" variable. This patch changes spin_lock_irqsave to spin_lock_irq and spin_unlock_irqrestore to spin_unlock_irq. Signed-off-by: Mikulas Patocka Signed-off-by: Alasdair G Kergon --- diff --git a/drivers/md/dm-snap.c b/drivers/md/dm-snap.c index a143921feaf6..223e7ebf24f7 100644 --- a/drivers/md/dm-snap.c +++ b/drivers/md/dm-snap.c @@ -198,14 +198,13 @@ static struct dm_snap_tracked_chunk *track_chunk(struct dm_snapshot *s, { struct dm_snap_tracked_chunk *c = mempool_alloc(s->tracked_chunk_pool, GFP_NOIO); - unsigned long flags; c->chunk = chunk; - spin_lock_irqsave(&s->tracked_chunk_lock, flags); + spin_lock_irq(&s->tracked_chunk_lock); hlist_add_head(&c->node, &s->tracked_chunk_hash[DM_TRACKED_CHUNK_HASH(chunk)]); - spin_unlock_irqrestore(&s->tracked_chunk_lock, flags); + spin_unlock_irq(&s->tracked_chunk_lock); return c; }