search for: write_unlock_bh

Displaying 12 results from an estimated 12 matches for "write_unlock_bh".

2007 Apr 18
0
[Bridge] [PATCH] (4/4) bridge forwarding table RCU
...+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_lock); } void br_fdb_cleanup(unsigned long _data) @@ -126,7 +126,7 @@ struct list_head *l, *n; unsigned long delay; - write_lock_bh(&br->hash_lock); + spin_lock_bh(&br->hash_lock); delay = hold_time(br); list_fo...
2023 Jul 21
2
[Bridge] [PATCH] can: j1939: prevent deadlock by changing j1939_socks_lock to rwlock
...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(&priv->j1939_socks_lock); + write_lock_bh(&priv->j1939_socks_lock); list_del_init(&jsk->list); - spin_unlock_bh(&priv->j1939_socks_lock);...
2019 Mar 29
0
[PATCH net v4] failover: allow name change on IFF_UP slave interfaces
...ite_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 write_unlock_bh(&dev_base_lock); 1247 1248 if (unlikely(dev->flags & IFF_UP)) {...
2019 Mar 28
0
[PATCH net v3] failover: allow name change on IFF_UP slave interfaces
...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 write_unlock_bh(&dev_base_lock); 1255 1256 ret = call_netdevice_notifiers(NETDEV_CHANGE...
2007 Apr 18
4
[Bridge] MTU Question
I have a bridge that has gigabit interfaces. The machine in question has the fun job of being a Bridge, Firewall and SMB server. Both of the Gigabit interfaces are connected to workstations directly via Xover cable (well MDI-X to be exact). My question is, if I enable jumbo frames on the gigabit interfaces will that make any difference in overall transfer rate of the bridge? I was thinking it
2013 Jun 28
0
Re: kernel panic in skb_copy_bits
...dated = 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_report(neigh, skb); write_lock(&neigh->lock); } - skb_queue_purge(&neigh-...
2019 Apr 02
0
[PATCH net v5] failover: allow name change on IFF_UP slave interfaces
...mp; IFF_FAILOVER_SLAVE))) > return -EBUSY; > > write_seqcount_begin(&devnet_rename_seq); > @@ -1232,6 +1246,15 @@ int dev_change_name(struct net_device *dev, const char *newname) > hlist_add_head_rcu(&dev->name_hlist, dev_name_hash(net, dev->name)); > write_unlock_bh(&dev_base_lock); > > + if (unlikely(dev->flags & IFF_UP)) { > + struct netdev_notifier_change_info change_info = { > + .info.dev = dev, > + }; > + > + call_netdevice_notifiers_info(NETDEV_CHANGE, > + &change_info.info); > + } > + >...
2019 Apr 02
0
[PATCH net v5] failover: allow name change on IFF_UP slave interfaces
...gs & IFF_FAILOVER_SLAVE))) > return -EBUSY; > > write_seqcount_begin(&devnet_rename_seq); > @@ -1232,6 +1246,15 @@ int dev_change_name(struct net_device *dev, const char *newname) > hlist_add_head_rcu(&dev->name_hlist, dev_name_hash(net, dev->name)); > write_unlock_bh(&dev_base_lock); > > + if (unlikely(dev->flags & IFF_UP)) { > + struct netdev_notifier_change_info change_info = { > + .info.dev = dev, > + }; > + > + call_netdevice_notifiers_info(NETDEV_CHANGE, > + &change_info.info); > + } > + >...
2019 Mar 29
0
[PATCH net v4] failover: allow name change on IFF_UP slave interfaces
...mp; IFF_FAILOVER_SLAVE))) > return -EBUSY; > > write_seqcount_begin(&devnet_rename_seq); > @@ -1227,6 +1241,14 @@ int dev_change_name(struct net_device *dev, const char *newname) > hlist_add_head_rcu(&dev->name_hlist, dev_name_hash(net, dev->name)); > write_unlock_bh(&dev_base_lock); > > + if (unlikely(dev->flags & IFF_UP)) { > + struct netdev_notifier_change_info change_info; > + > + change_info.flags_changed = 0; > + call_netdevice_notifiers_info(NETDEV_CHANGE, dev, > + &change_info.info); This function no...
2019 Mar 29
0
[PATCH net v4] failover: allow name change on IFF_UP slave interfaces
...write_seqcount_begin(&devnet_rename_seq); > > > @@ -1227,6 +1241,14 @@ int dev_change_name(struct net_device *dev, > > > const char *newname) > > > hlist_add_head_rcu(&dev->name_hlist, dev_name_hash(net, > > > dev->name)); > > > write_unlock_bh(&dev_base_lock); > > > + if (unlikely(dev->flags & IFF_UP)) { > > > + struct netdev_notifier_change_info change_info; > > > + > > > + change_info.flags_changed = 0; > > > + call_netdevice_notifiers_info(NETDEV_CHANGE,...
2019 Apr 05
2
[PATCH net v6] failover: allow name change on IFF_UP slave interfaces
...& IFF_LIVE_NAME_CHANGE))) > return -EBUSY; > > write_seqcount_begin(&devnet_rename_seq); > @@ -1232,6 +1246,15 @@ int dev_change_name(struct net_device *dev, const char *newname) > hlist_add_head_rcu(&dev->name_hlist, dev_name_hash(net, dev->name)); > write_unlock_bh(&dev_base_lock); > > + if (unlikely(dev->flags & IFF_UP)) { > + struct netdev_notifier_change_info change_info = { > + .info.dev = dev, > + }; > + > + call_netdevice_notifiers_info(NETDEV_CHANGE, > + &change_info.info); > + } > + >...
2019 Apr 05
2
[PATCH net v6] failover: allow name change on IFF_UP slave interfaces
...& IFF_LIVE_NAME_CHANGE))) > return -EBUSY; > > write_seqcount_begin(&devnet_rename_seq); > @@ -1232,6 +1246,15 @@ int dev_change_name(struct net_device *dev, const char *newname) > hlist_add_head_rcu(&dev->name_hlist, dev_name_hash(net, dev->name)); > write_unlock_bh(&dev_base_lock); > > + if (unlikely(dev->flags & IFF_UP)) { > + struct netdev_notifier_change_info change_info = { > + .info.dev = dev, > + }; > + > + call_netdevice_notifiers_info(NETDEV_CHANGE, > + &change_info.info); > + } > + >...