forked from luck/tmp_suning_uos_patched
net: remove bh disabling around percpu_counter accesses
Shaohua Li made percpu_counter irq safe in commit 098faf5805
("percpu_counter: make APIs irq safe")
We can safely remove BH disable/enable sections around various
percpu_counter manipulations.
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
0a327889f6
commit
c2a2efbbfc
|
@ -46,19 +46,12 @@ static inline int dst_entries_get_fast(struct dst_ops *dst)
|
|||
|
||||
static inline int dst_entries_get_slow(struct dst_ops *dst)
|
||||
{
|
||||
int res;
|
||||
|
||||
local_bh_disable();
|
||||
res = percpu_counter_sum_positive(&dst->pcpuc_entries);
|
||||
local_bh_enable();
|
||||
return res;
|
||||
return percpu_counter_sum_positive(&dst->pcpuc_entries);
|
||||
}
|
||||
|
||||
static inline void dst_entries_add(struct dst_ops *dst, int val)
|
||||
{
|
||||
local_bh_disable();
|
||||
percpu_counter_add(&dst->pcpuc_entries, val);
|
||||
local_bh_enable();
|
||||
}
|
||||
|
||||
static inline int dst_entries_init(struct dst_ops *dst)
|
||||
|
|
|
@ -164,13 +164,7 @@ static inline void add_frag_mem_limit(struct netns_frags *nf, int i)
|
|||
|
||||
static inline unsigned int sum_frag_mem_limit(struct netns_frags *nf)
|
||||
{
|
||||
unsigned int res;
|
||||
|
||||
local_bh_disable();
|
||||
res = percpu_counter_sum_positive(&nf->mem);
|
||||
local_bh_enable();
|
||||
|
||||
return res;
|
||||
return percpu_counter_sum_positive(&nf->mem);
|
||||
}
|
||||
|
||||
/* RFC 3168 support :
|
||||
|
|
|
@ -836,9 +836,8 @@ void inet_csk_destroy_sock(struct sock *sk)
|
|||
|
||||
sk_refcnt_debug_release(sk);
|
||||
|
||||
local_bh_disable();
|
||||
percpu_counter_dec(sk->sk_prot->orphan_count);
|
||||
local_bh_enable();
|
||||
|
||||
sock_put(sk);
|
||||
}
|
||||
EXPORT_SYMBOL(inet_csk_destroy_sock);
|
||||
|
|
|
@ -57,10 +57,8 @@ static int sockstat_seq_show(struct seq_file *seq, void *v)
|
|||
unsigned int frag_mem;
|
||||
int orphans, sockets;
|
||||
|
||||
local_bh_disable();
|
||||
orphans = percpu_counter_sum_positive(&tcp_orphan_count);
|
||||
sockets = proto_sockets_allocated_sum_positive(&tcp_prot);
|
||||
local_bh_enable();
|
||||
|
||||
socket_seq_show(seq);
|
||||
seq_printf(seq, "TCP: inuse %d orphan %d tw %d alloc %d mem %ld\n",
|
||||
|
|
|
@ -420,9 +420,7 @@ void tcp_init_sock(struct sock *sk)
|
|||
sk->sk_sndbuf = sysctl_tcp_wmem[1];
|
||||
sk->sk_rcvbuf = sysctl_tcp_rmem[1];
|
||||
|
||||
local_bh_disable();
|
||||
sk_sockets_allocated_inc(sk);
|
||||
local_bh_enable();
|
||||
}
|
||||
EXPORT_SYMBOL(tcp_init_sock);
|
||||
|
||||
|
|
|
@ -1887,9 +1887,7 @@ void tcp_v4_destroy_sock(struct sock *sk)
|
|||
tcp_free_fastopen_req(tp);
|
||||
tcp_saved_syn_free(tp);
|
||||
|
||||
local_bh_disable();
|
||||
sk_sockets_allocated_dec(sk);
|
||||
local_bh_enable();
|
||||
}
|
||||
EXPORT_SYMBOL(tcp_v4_destroy_sock);
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user