942e4a2bd6
The x_tables are organized with a table structure and a per-cpu copies of the counters and rules. On older kernels there was a reader/writer lock per table which was a performance bottleneck. In 2.6.30-rc, this was converted to use RCU and the counters/rules which solved the performance problems for do_table but made replacing rules much slower because of the necessary RCU grace period. This version uses a per-cpu set of spinlocks and counters to allow to table processing to proceed without the cache thrashing of a global reader lock and keeps the same performance for table updates. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Acked-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net> |
||
---|---|---|
.. | ||
Kbuild | ||
nf_conntrack_amanda.h | ||
nf_conntrack_common.h | ||
nf_conntrack_dccp.h | ||
nf_conntrack_ftp.h | ||
nf_conntrack_h323_asn1.h | ||
nf_conntrack_h323_types.h | ||
nf_conntrack_h323.h | ||
nf_conntrack_irc.h | ||
nf_conntrack_pptp.h | ||
nf_conntrack_proto_gre.h | ||
nf_conntrack_sane.h | ||
nf_conntrack_sctp.h | ||
nf_conntrack_sip.h | ||
nf_conntrack_tcp.h | ||
nf_conntrack_tftp.h | ||
nf_conntrack_tuple_common.h | ||
nfnetlink_compat.h | ||
nfnetlink_conntrack.h | ||
nfnetlink_log.h | ||
nfnetlink_queue.h | ||
nfnetlink.h | ||
x_tables.h | ||
xt_CLASSIFY.h | ||
xt_cluster.h | ||
xt_comment.h | ||
xt_connbytes.h | ||
xt_connlimit.h | ||
xt_connmark.h | ||
xt_CONNMARK.h | ||
xt_CONNSECMARK.h | ||
xt_conntrack.h | ||
xt_dccp.h | ||
xt_dscp.h | ||
xt_DSCP.h | ||
xt_esp.h | ||
xt_hashlimit.h | ||
xt_helper.h | ||
xt_iprange.h | ||
xt_LED.h | ||
xt_length.h | ||
xt_limit.h | ||
xt_mac.h | ||
xt_mark.h | ||
xt_MARK.h | ||
xt_multiport.h | ||
xt_NFLOG.h | ||
xt_NFQUEUE.h | ||
xt_owner.h | ||
xt_physdev.h | ||
xt_pkttype.h | ||
xt_policy.h | ||
xt_quota.h | ||
xt_rateest.h | ||
xt_RATEEST.h | ||
xt_realm.h | ||
xt_recent.h | ||
xt_sctp.h | ||
xt_SECMARK.h | ||
xt_state.h | ||
xt_statistic.h | ||
xt_string.h | ||
xt_tcpmss.h | ||
xt_TCPMSS.h | ||
xt_TCPOPTSTRIP.h | ||
xt_tcpudp.h | ||
xt_time.h | ||
xt_TPROXY.h | ||
xt_u32.h |