]> Pileus Git - ~andy/linux/commitdiff
mac80211: minor cleanup to mesh state locking
authorJohannes Berg <johannes.berg@intel.com>
Fri, 18 Nov 2011 14:27:31 +0000 (15:27 +0100)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 21 Nov 2011 21:20:48 +0000 (16:20 -0500)
First time I tried smatch, and it says:
mesh_hwmp.c +870 mesh_queue_preq(21) error: double lock 'bottom_half:'
mesh_hwmp.c +873 mesh_queue_preq(24) error: double unlock 'bottom_half:'
mesh_hwmp.c +886 mesh_queue_preq(37) error: double unlock 'bottom_half:'

Which is indeed true -- there's no point in disabling BHs
again if we just did that a few lines earlier, so remove.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
net/mac80211/mesh_hwmp.c

index 8a81591f001345a92022615f279f1ad07fe2b538..ce3db2735d7c3a3685af102fd03a22d331a98ede 100644 (file)
@@ -867,9 +867,9 @@ static void mesh_queue_preq(struct mesh_path *mpath, u8 flags)
                return;
        }
 
-       spin_lock_bh(&mpath->state_lock);
+       spin_lock(&mpath->state_lock);
        if (mpath->flags & MESH_PATH_REQ_QUEUED) {
-               spin_unlock_bh(&mpath->state_lock);
+               spin_unlock(&mpath->state_lock);
                spin_unlock_bh(&ifmsh->mesh_preq_queue_lock);
                kfree(preq_node);
                return;
@@ -879,7 +879,7 @@ static void mesh_queue_preq(struct mesh_path *mpath, u8 flags)
        preq_node->flags = flags;
 
        mpath->flags |= MESH_PATH_REQ_QUEUED;
-       spin_unlock_bh(&mpath->state_lock);
+       spin_unlock(&mpath->state_lock);
 
        list_add_tail(&preq_node->list, &ifmsh->preq_queue.list);
        ++ifmsh->preq_queue_len;