Hello,
On Sat, 21 Jul 2012, Eric Dumazet wrote:
The writer sides might be run concurrently by several cpus, so
u64_stats_update_begin(&sstats->syncp); are racy : a reader can
be trapped forever.
quoted
net/netfilter/ipvs/ip_vs_est.c
Same problem for this one, I think.
I CCed ipvs maintainers so that they can take a look.
IPVS moved to percpu counters, i.e. even on 32-bit SMP
we do not use locks to protect the seqcounter:
commit b17fc9963f837ef1acfe36e193108fb16ed58647
Author: Hans Schillstrom [off-list ref]
Date: Mon Jan 3 14:44:56 2011 +0100
IPVS: netns, ip_vs_stats and its procfs
quoted
Do these need to be updated as well? Looking at these files quickly
and with my limited knowledge of the kernel I am not sure if they
update the stats in a BH context or not.
We have 2 kinds of readers:
- timer context (ip_vs_est.c): no _bh is used for fetch
- user context (ip_vs_ctl.c): _bh is used for fetch
quoted
Kevin
Thanks !
Regards
--
Julian Anastasov [off-list ref]