Displaying 6 results from an estimated 6 matches for "write_lock_bh".
Did you mean:
write_unlock_bh
2007 Apr 18
0
[Bridge] [PATCH] (4/4) bridge forwarding table RCU
...15:30:04 -07:00
@@ -73,7 +73,7 @@
static __inline__ void fdb_delete(struct net_bridge_fdb_entry *f)
{
- hlist_del(&f->hlist);
+ hlist_del_rcu(&f->hlist);
if (!f->is_static)
list_del(&f->age_list);
@@ -85,7 +85,7 @@
struct net_bridge *br = p->br;
int i;
- write_lock_bh(&br->hash_lock);
+ spin_lock_bh(&br->hash_lock);
/* Search all chains since old address/hash is unknown */
for (i = 0; i < BR_HASH_SIZE; i++) {
@@ -117,7 +117,7 @@
fdb_insert(br, p, newaddr, 1);
- write_unlock_bh(&br->hash_lock);
+ spin_unlock_bh(&br->hash...
2023 Jul 21
2
[Bridge] [PATCH] can: j1939: prevent deadlock by changing j1939_socks_lock to rwlock
...feaec4ad6d16..a8b981dc2065 100644
--- a/net/can/j1939/socket.c
+++ b/net/can/j1939/socket.c
@@ -80,16 +80,16 @@ static void j1939_jsk_add(struct j1939_priv *priv, struct j1939_sock *jsk)
jsk->state |= J1939_SOCK_BOUND;
j1939_priv_get(priv);
- spin_lock_bh(&priv->j1939_socks_lock);
+ write_lock_bh(&priv->j1939_socks_lock);
list_add_tail(&jsk->list, &priv->j1939_socks);
- spin_unlock_bh(&priv->j1939_socks_lock);
+ write_unlock_bh(&priv->j1939_socks_lock);
}
static void j1939_jsk_del(struct j1939_priv *priv, struct j1939_sock *jsk)
{
- spin_lock_bh(&am...
2013 Jun 28
0
Re: kernel panic in skb_copy_bits
...ueue);
rwlock_init(&n->lock);
seqlock_init(&n->ha_lock);
n->updated = n->used = now;
@@ -708,7 +708,9 @@ void neigh_destroy(struct neighbour *neigh)
if (neigh_del_timer(neigh))
pr_warn("Impossible event\n");
- skb_queue_purge(&neigh->arp_queue);
+ write_lock_bh(&neigh->lock);
+ __skb_queue_purge(&neigh->arp_queue);
+ write_unlock_bh(&neigh->lock);
neigh->arp_queue_len_bytes = 0;
if (dev->netdev_ops->ndo_neigh_destroy)
@@ -858,7 +860,7 @@ static void neigh_invalidate(struct neighbour *neigh)
neigh->ops->error_re...
2019 Mar 29
0
[PATCH net v4] failover: allow name change on IFF_UP slave interfaces
...;name, oldname, IFNAMSIZ);
1229 dev->name_assign_type = old_assign_type;
1230 write_seqcount_end(&devnet_rename_seq);
1231 return ret;
1232 }
1233
1234 write_seqcount_end(&devnet_rename_seq);
1235
1236 netdev_adjacent_rename_links(dev, oldname);
1237
1238 write_lock_bh(&dev_base_lock);
1239 hlist_del_rcu(&dev->name_hlist);
1240 write_unlock_bh(&dev_base_lock);
1241
1242 synchronize_rcu();
1243
1244 write_lock_bh(&dev_base_lock);
1245 hlist_add_head_rcu(&dev->name_hlist, dev_name_hash(net, dev->name));
1246 writ...
2019 Mar 28
0
[PATCH net v3] failover: allow name change on IFF_UP slave interfaces
..._assign_type = old_assign_type;
1236 write_seqcount_end(&devnet_rename_seq);
1237 if (err >= 0)
1238 err = ret;
1239 goto reopen;
1240 }
1241
1242 write_seqcount_end(&devnet_rename_seq);
1243
1244 netdev_adjacent_rename_links(dev, oldname);
1245
1246 write_lock_bh(&dev_base_lock);
1247 hlist_del_rcu(&dev->name_hlist);
1248 write_unlock_bh(&dev_base_lock);
1249
1250 synchronize_rcu();
1251
1252 write_lock_bh(&dev_base_lock);
1253 hlist_add_head_rcu(&dev->name_hlist, dev_name_hash(net, dev->name));
1254 writ...
2007 Apr 18
0
[Bridge] [PATCH 2.4] (1/2) bridge - backport of API checking
...r_port) == NULL)
+ if ((p = dev->br_port) == NULL || p->br != br)
return -EINVAL;
br_stp_disable_port(p);
@@ -231,6 +232,9 @@
if (dev->hard_start_xmit == br_dev_xmit)
return -ELOOP;
+
+ if (!is_valid_ether_addr(dev->dev_addr))
+ return -EADDRNOTAVAIL;
dev_hold(dev);
write_lock_bh(&br->lock);