Skip to content

Commit

Permalink
batman-adv: prepare lq_update_lock to be shared among different proto…
Browse files Browse the repository at this point in the history
…cols

Signed-off-by: Marek Lindner <[email protected]>
Signed-off-by: Antonio Quartulli <[email protected]>
  • Loading branch information
Marek Lindner authored and Antonio Quartulli committed May 13, 2012
1 parent 3275e7c commit e3b0d0d
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 6 deletions.
9 changes: 4 additions & 5 deletions net/batman-adv/bat_iv_ogm.c
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,6 @@ static struct neigh_node *bat_iv_ogm_neigh_new(struct hard_iface *hard_iface,
goto out;

INIT_LIST_HEAD(&neigh_node->bonding_list);
spin_lock_init(&neigh_node->tq_lock);

neigh_node->orig_node = orig_neigh;
neigh_node->if_incoming = hard_iface;
Expand Down Expand Up @@ -637,12 +636,12 @@ static void bat_iv_ogm_orig_update(struct bat_priv *bat_priv,
if (is_duplicate)
continue;

spin_lock_bh(&tmp_neigh_node->tq_lock);
spin_lock_bh(&tmp_neigh_node->lq_update_lock);
ring_buffer_set(tmp_neigh_node->tq_recv,
&tmp_neigh_node->tq_index, 0);
tmp_neigh_node->tq_avg =
ring_buffer_avg(tmp_neigh_node->tq_recv);
spin_unlock_bh(&tmp_neigh_node->tq_lock);
spin_unlock_bh(&tmp_neigh_node->lq_update_lock);
}

if (!neigh_node) {
Expand All @@ -668,12 +667,12 @@ static void bat_iv_ogm_orig_update(struct bat_priv *bat_priv,
orig_node->flags = batman_ogm_packet->flags;
neigh_node->last_seen = jiffies;

spin_lock_bh(&neigh_node->tq_lock);
spin_lock_bh(&neigh_node->lq_update_lock);
ring_buffer_set(neigh_node->tq_recv,
&neigh_node->tq_index,
batman_ogm_packet->tq);
neigh_node->tq_avg = ring_buffer_avg(neigh_node->tq_recv);
spin_unlock_bh(&neigh_node->tq_lock);
spin_unlock_bh(&neigh_node->lq_update_lock);

if (!is_duplicate) {
orig_node->last_ttl = batman_ogm_packet->header.ttl;
Expand Down
1 change: 1 addition & 0 deletions net/batman-adv/originator.c
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,7 @@ struct neigh_node *batadv_neigh_node_new(struct hard_iface *hard_iface,
INIT_HLIST_NODE(&neigh_node->list);

memcpy(neigh_node->addr, neigh_addr, ETH_ALEN);
spin_lock_init(&neigh_node->lq_update_lock);

/* extra reference for return */
atomic_set(&neigh_node->refcount, 2);
Expand Down
2 changes: 1 addition & 1 deletion net/batman-adv/types.h
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ struct neigh_node {
struct rcu_head rcu;
struct orig_node *orig_node;
struct hard_iface *if_incoming;
spinlock_t tq_lock; /* protects: tq_recv, tq_index */
spinlock_t lq_update_lock; /* protects: tq_recv, tq_index */
};

#ifdef CONFIG_BATMAN_ADV_BLA
Expand Down

0 comments on commit e3b0d0d

Please sign in to comment.