android_kernel_sony_msm8994/include/net/netns
Eric Dumazet 6bed3166d0 ipv4: tcp: get rid of ugly unicast_sock
[ Upstream commit bdbbb8527b6f6a358dbcb70dac247034d665b8e4 ]

In commit be9f4a44e7 ("ipv4: tcp: remove per net tcp_sock")
I tried to address contention on a socket lock, but the solution
I chose was horrible :

commit 3a7c384ffd ("ipv4: tcp: unicast_sock should not land outside
of TCP stack") addressed a selinux regression.

commit 0980e56e50 ("ipv4: tcp: set unicast_sock uc_ttl to -1")
took care of another regression.

commit b5ec8eeac4 ("ipv4: fix ip_send_skb()") fixed another regression.

commit 811230cd85 ("tcp: ipv4: initialize unicast_sock sk_pacing_rate")
was another shot in the dark.

Really, just use a proper socket per cpu, and remove the skb_orphan()
call, to re-enable flow control.

This solves a serious problem with FQ packet scheduler when used in
hostile environments, as we do not want to allocate a flow structure
for every RST packet sent in response to a spoofed packet.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-02-26 17:48:48 -08:00
..
conntrack.h netfilter: add connlabel conntrack extension 2013-01-18 00:28:15 +01:00
core.h percpu: add __percpu sparse annotations to net 2010-02-16 23:05:38 -08:00
dccp.h [NETNS][DCCPV6]: Move the dccp_v6_ctl_sk on the struct net. 2008-04-13 22:32:25 -07:00
generic.h BUG: headers with BUG/BUG_ON etc. need linux/bug.h 2012-03-04 17:54:34 -05:00
hash.h net: cleanup unsigned to unsigned int 2012-04-15 12:44:40 -04:00
ipv4.h ipv4: tcp: get rid of ugly unicast_sock 2015-02-26 17:48:48 -08:00
ipv6.h ipv6: provide addr and netconf dump consistency info 2013-03-24 17:16:29 -04:00
mib.h net: use IS_ENABLED(CONFIG_IPV6) 2011-12-11 18:25:16 -05:00
netfilter.h netfilter: nf_log: prepare net namespace support for loggers 2013-04-05 20:12:54 +02:00
packet.h packet: fix broken build. 2012-08-23 09:29:45 -07:00
sctp.h sctp: Make hmac algorithm selection for cookie generation dynamic 2012-10-26 02:22:18 -04:00
unix.h
x_tables.h netfilter: xt_CT: recover NOTRACK target support 2012-12-24 12:55:09 +01:00
xfrm.h net: use IS_ENABLED(CONFIG_IPV6) 2011-12-11 18:25:16 -05:00