<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux.git/net/ipv4, branch v3.9-rc6</title>
<subtitle>Linux kernel source tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/'/>
<entry>
<title>net: ipv4: notify when address lifetime changes</title>
<updated>2013-04-05T04:51:12+00:00</updated>
<author>
<name>Jiri Pirko</name>
<email>jiri@resnulli.us</email>
</author>
<published>2013-04-04T08:33:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=34e2ed34a035de07277cca817fe8264324398141'/>
<id>34e2ed34a035de07277cca817fe8264324398141</id>
<content type='text'>
if userspace changes lifetime of address, send netlink notification and
call notifier.

Signed-off-by: Jiri Pirko &lt;jiri@resnulli.us&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
if userspace changes lifetime of address, send netlink notification and
call notifier.

Signed-off-by: Jiri Pirko &lt;jiri@resnulli.us&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ipv4: Fix ip-header identification for gso packets.</title>
<updated>2013-03-26T17:50:05+00:00</updated>
<author>
<name>Pravin B Shelar</name>
<email>pshelar@nicira.com</email>
</author>
<published>2013-03-24T17:36:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=330305cc4a6b0cb75c22fc01b8826f0ad755550f'/>
<id>330305cc4a6b0cb75c22fc01b8826f0ad755550f</id>
<content type='text'>
ip-header id needs to be incremented even if IP_DF flag is set.
This behaviour was changed in commit 490ab08127cebc25e3a26
(IP_GRE: Fix IP-Identification).

Following patch fixes it so that identification is always
incremented.

Reported-by: Cong Wang &lt;amwang@redhat.com&gt;
Signed-off-by: Pravin B Shelar &lt;pshelar@nicira.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ip-header id needs to be incremented even if IP_DF flag is set.
This behaviour was changed in commit 490ab08127cebc25e3a26
(IP_GRE: Fix IP-Identification).

Following patch fixes it so that identification is always
incremented.

Reported-by: Cong Wang &lt;amwang@redhat.com&gt;
Signed-off-by: Pravin B Shelar &lt;pshelar@nicira.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tcp: undo spurious timeout after SACK reneging</title>
<updated>2013-03-24T21:27:28+00:00</updated>
<author>
<name>Yuchung Cheng</name>
<email>ycheng@google.com</email>
</author>
<published>2013-03-24T10:42:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=7ebe183c6d444ef5587d803b64a1f4734b18c564'/>
<id>7ebe183c6d444ef5587d803b64a1f4734b18c564</id>
<content type='text'>
On SACK reneging the sender immediately retransmits and forces a
timeout but disables Eifel (undo). If the (buggy) receiver does not
drop any packet this can trigger a false slow-start retransmit storm
driven by the ACKs of the original packets. This can be detected with
undo and TCP timestamps.

Signed-off-by: Yuchung Cheng &lt;ycheng@google.com&gt;
Acked-by: Neal Cardwell &lt;ncardwell@google.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
On SACK reneging the sender immediately retransmits and forces a
timeout but disables Eifel (undo). If the (buggy) receiver does not
drop any packet this can trigger a false slow-start retransmit storm
driven by the ACKs of the original packets. This can be detected with
undo and TCP timestamps.

Signed-off-by: Yuchung Cheng &lt;ycheng@google.com&gt;
Acked-by: Neal Cardwell &lt;ncardwell@google.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tcp: preserve ACK clocking in TSO</title>
<updated>2013-03-22T14:34:03+00:00</updated>
<author>
<name>Eric Dumazet</name>
<email>edumazet@google.com</email>
</author>
<published>2013-03-21T17:36:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=f4541d60a449afd40448b06496dcd510f505928e'/>
<id>f4541d60a449afd40448b06496dcd510f505928e</id>
<content type='text'>
A long standing problem with TSO is the fact that tcp_tso_should_defer()
rearms the deferred timer, while it should not.

Current code leads to following bad bursty behavior :

20:11:24.484333 IP A &gt; B: . 297161:316921(19760) ack 1 win 119
20:11:24.484337 IP B &gt; A: . ack 263721 win 1117
20:11:24.485086 IP B &gt; A: . ack 265241 win 1117
20:11:24.485925 IP B &gt; A: . ack 266761 win 1117
20:11:24.486759 IP B &gt; A: . ack 268281 win 1117
20:11:24.487594 IP B &gt; A: . ack 269801 win 1117
20:11:24.488430 IP B &gt; A: . ack 271321 win 1117
20:11:24.489267 IP B &gt; A: . ack 272841 win 1117
20:11:24.490104 IP B &gt; A: . ack 274361 win 1117
20:11:24.490939 IP B &gt; A: . ack 275881 win 1117
20:11:24.491775 IP B &gt; A: . ack 277401 win 1117
20:11:24.491784 IP A &gt; B: . 316921:332881(15960) ack 1 win 119
20:11:24.492620 IP B &gt; A: . ack 278921 win 1117
20:11:24.493448 IP B &gt; A: . ack 280441 win 1117
20:11:24.494286 IP B &gt; A: . ack 281961 win 1117
20:11:24.495122 IP B &gt; A: . ack 283481 win 1117
20:11:24.495958 IP B &gt; A: . ack 285001 win 1117
20:11:24.496791 IP B &gt; A: . ack 286521 win 1117
20:11:24.497628 IP B &gt; A: . ack 288041 win 1117
20:11:24.498459 IP B &gt; A: . ack 289561 win 1117
20:11:24.499296 IP B &gt; A: . ack 291081 win 1117
20:11:24.500133 IP B &gt; A: . ack 292601 win 1117
20:11:24.500970 IP B &gt; A: . ack 294121 win 1117
20:11:24.501388 IP B &gt; A: . ack 295641 win 1117
20:11:24.501398 IP A &gt; B: . 332881:351881(19000) ack 1 win 119

While the expected behavior is more like :

20:19:49.259620 IP A &gt; B: . 197601:202161(4560) ack 1 win 119
20:19:49.260446 IP B &gt; A: . ack 154281 win 1212
20:19:49.261282 IP B &gt; A: . ack 155801 win 1212
20:19:49.262125 IP B &gt; A: . ack 157321 win 1212
20:19:49.262136 IP A &gt; B: . 202161:206721(4560) ack 1 win 119
20:19:49.262958 IP B &gt; A: . ack 158841 win 1212
20:19:49.263795 IP B &gt; A: . ack 160361 win 1212
20:19:49.264628 IP B &gt; A: . ack 161881 win 1212
20:19:49.264637 IP A &gt; B: . 206721:211281(4560) ack 1 win 119
20:19:49.265465 IP B &gt; A: . ack 163401 win 1212
20:19:49.265886 IP B &gt; A: . ack 164921 win 1212
20:19:49.266722 IP B &gt; A: . ack 166441 win 1212
20:19:49.266732 IP A &gt; B: . 211281:215841(4560) ack 1 win 119
20:19:49.267559 IP B &gt; A: . ack 167961 win 1212
20:19:49.268394 IP B &gt; A: . ack 169481 win 1212
20:19:49.269232 IP B &gt; A: . ack 171001 win 1212
20:19:49.269241 IP A &gt; B: . 215841:221161(5320) ack 1 win 119

Signed-off-by: Eric Dumazet &lt;edumazet@google.com&gt;
Cc: Yuchung Cheng &lt;ycheng@google.com&gt;
Cc: Van Jacobson &lt;vanj@google.com&gt;
Cc: Neal Cardwell &lt;ncardwell@google.com&gt;
Cc: Nandita Dukkipati &lt;nanditad@google.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A long standing problem with TSO is the fact that tcp_tso_should_defer()
rearms the deferred timer, while it should not.

Current code leads to following bad bursty behavior :

20:11:24.484333 IP A &gt; B: . 297161:316921(19760) ack 1 win 119
20:11:24.484337 IP B &gt; A: . ack 263721 win 1117
20:11:24.485086 IP B &gt; A: . ack 265241 win 1117
20:11:24.485925 IP B &gt; A: . ack 266761 win 1117
20:11:24.486759 IP B &gt; A: . ack 268281 win 1117
20:11:24.487594 IP B &gt; A: . ack 269801 win 1117
20:11:24.488430 IP B &gt; A: . ack 271321 win 1117
20:11:24.489267 IP B &gt; A: . ack 272841 win 1117
20:11:24.490104 IP B &gt; A: . ack 274361 win 1117
20:11:24.490939 IP B &gt; A: . ack 275881 win 1117
20:11:24.491775 IP B &gt; A: . ack 277401 win 1117
20:11:24.491784 IP A &gt; B: . 316921:332881(15960) ack 1 win 119
20:11:24.492620 IP B &gt; A: . ack 278921 win 1117
20:11:24.493448 IP B &gt; A: . ack 280441 win 1117
20:11:24.494286 IP B &gt; A: . ack 281961 win 1117
20:11:24.495122 IP B &gt; A: . ack 283481 win 1117
20:11:24.495958 IP B &gt; A: . ack 285001 win 1117
20:11:24.496791 IP B &gt; A: . ack 286521 win 1117
20:11:24.497628 IP B &gt; A: . ack 288041 win 1117
20:11:24.498459 IP B &gt; A: . ack 289561 win 1117
20:11:24.499296 IP B &gt; A: . ack 291081 win 1117
20:11:24.500133 IP B &gt; A: . ack 292601 win 1117
20:11:24.500970 IP B &gt; A: . ack 294121 win 1117
20:11:24.501388 IP B &gt; A: . ack 295641 win 1117
20:11:24.501398 IP A &gt; B: . 332881:351881(19000) ack 1 win 119

While the expected behavior is more like :

20:19:49.259620 IP A &gt; B: . 197601:202161(4560) ack 1 win 119
20:19:49.260446 IP B &gt; A: . ack 154281 win 1212
20:19:49.261282 IP B &gt; A: . ack 155801 win 1212
20:19:49.262125 IP B &gt; A: . ack 157321 win 1212
20:19:49.262136 IP A &gt; B: . 202161:206721(4560) ack 1 win 119
20:19:49.262958 IP B &gt; A: . ack 158841 win 1212
20:19:49.263795 IP B &gt; A: . ack 160361 win 1212
20:19:49.264628 IP B &gt; A: . ack 161881 win 1212
20:19:49.264637 IP A &gt; B: . 206721:211281(4560) ack 1 win 119
20:19:49.265465 IP B &gt; A: . ack 163401 win 1212
20:19:49.265886 IP B &gt; A: . ack 164921 win 1212
20:19:49.266722 IP B &gt; A: . ack 166441 win 1212
20:19:49.266732 IP A &gt; B: . 211281:215841(4560) ack 1 win 119
20:19:49.267559 IP B &gt; A: . ack 167961 win 1212
20:19:49.268394 IP B &gt; A: . ack 169481 win 1212
20:19:49.269232 IP B &gt; A: . ack 171001 win 1212
20:19:49.269241 IP A &gt; B: . 215841:221161(5320) ack 1 win 119

Signed-off-by: Eric Dumazet &lt;edumazet@google.com&gt;
Cc: Yuchung Cheng &lt;ycheng@google.com&gt;
Cc: Van Jacobson &lt;vanj@google.com&gt;
Cc: Neal Cardwell &lt;ncardwell@google.com&gt;
Cc: Nandita Dukkipati &lt;nanditad@google.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ipconfig: Fix newline handling in log message.</title>
<updated>2013-03-20T16:15:58+00:00</updated>
<author>
<name>Martin Fuzzey</name>
<email>mfuzzey@parkeon.com</email>
</author>
<published>2013-03-19T08:19:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=283951f95b067877ca5ea77afaa212bb1e0507b5'/>
<id>283951f95b067877ca5ea77afaa212bb1e0507b5</id>
<content type='text'>
When using ipconfig the logs currently look like:

Single name server:
[    3.467270] IP-Config: Complete:
[    3.470613]      device=eth0, hwaddr=ac:de:48:00:00:01, ipaddr=172.16.42.2, mask=255.255.255.0, gw=172.16.42.1
[    3.480670]      host=infigo-1, domain=, nis-domain=(none)
[    3.486166]      bootserver=172.16.42.1, rootserver=172.16.42.1, rootpath=
[    3.492910]      nameserver0=172.16.42.1[    3.496853] ALSA device list:

Three name servers:
[    3.496949] IP-Config: Complete:
[    3.500293]      device=eth0, hwaddr=ac:de:48:00:00:01, ipaddr=172.16.42.2, mask=255.255.255.0, gw=172.16.42.1
[    3.510367]      host=infigo-1, domain=, nis-domain=(none)
[    3.515864]      bootserver=172.16.42.1, rootserver=172.16.42.1, rootpath=
[    3.522635]      nameserver0=172.16.42.1, nameserver1=172.16.42.100
[    3.529149] , nameserver2=172.16.42.200

Fix newline handling for these cases

Signed-off-by: Martin Fuzzey &lt;mfuzzey@parkeon.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When using ipconfig the logs currently look like:

Single name server:
[    3.467270] IP-Config: Complete:
[    3.470613]      device=eth0, hwaddr=ac:de:48:00:00:01, ipaddr=172.16.42.2, mask=255.255.255.0, gw=172.16.42.1
[    3.480670]      host=infigo-1, domain=, nis-domain=(none)
[    3.486166]      bootserver=172.16.42.1, rootserver=172.16.42.1, rootpath=
[    3.492910]      nameserver0=172.16.42.1[    3.496853] ALSA device list:

Three name servers:
[    3.496949] IP-Config: Complete:
[    3.500293]      device=eth0, hwaddr=ac:de:48:00:00:01, ipaddr=172.16.42.2, mask=255.255.255.0, gw=172.16.42.1
[    3.510367]      host=infigo-1, domain=, nis-domain=(none)
[    3.515864]      bootserver=172.16.42.1, rootserver=172.16.42.1, rootpath=
[    3.522635]      nameserver0=172.16.42.1, nameserver1=172.16.42.100
[    3.529149] , nameserver2=172.16.42.200

Fix newline handling for these cases

Signed-off-by: Martin Fuzzey &lt;mfuzzey@parkeon.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>udp: add encap_destroy callback</title>
<updated>2013-03-20T16:10:38+00:00</updated>
<author>
<name>Tom Parkin</name>
<email>tparkin@katalix.com</email>
</author>
<published>2013-03-19T06:11:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=44046a593eb770dbecdabf1c82bcd252f2a8337b'/>
<id>44046a593eb770dbecdabf1c82bcd252f2a8337b</id>
<content type='text'>
Users of udp encapsulation currently have an encap_rcv callback which they can
use to hook into the udp receive path.

In situations where a encapsulation user allocates resources associated with a
udp encap socket, it may be convenient to be able to also hook the proto
.destroy operation.  For example, if an encap user holds a reference to the
udp socket, the destroy hook might be used to relinquish this reference.

This patch adds a socket destroy hook into udp, which is set and enabled
in the same way as the existing encap_rcv hook.

Signed-off-by: Tom Parkin &lt;tparkin@katalix.com&gt;
Signed-off-by: James Chapman &lt;jchapman@katalix.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Users of udp encapsulation currently have an encap_rcv callback which they can
use to hook into the udp receive path.

In situations where a encapsulation user allocates resources associated with a
udp encap socket, it may be convenient to be able to also hook the proto
.destroy operation.  For example, if an encap user holds a reference to the
udp socket, the destroy hook might be used to relinquish this reference.

This patch adds a socket destroy hook into udp, which is set and enabled
in the same way as the existing encap_rcv hook.

Signed-off-by: Tom Parkin &lt;tparkin@katalix.com&gt;
Signed-off-by: James Chapman &lt;jchapman@katalix.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'master' of git://1984.lsi.us.es/nf</title>
<updated>2013-03-20T14:23:52+00:00</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2013-03-20T14:23:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=90b2621fd465949e1714127e829a79160de14b38'/>
<id>90b2621fd465949e1714127e829a79160de14b38</id>
<content type='text'>
Pablo Neira Ayuso says:

====================
The following patchset contains 7 Netfilter/IPVS fixes for 3.9-rc, they are:

* Restrict IPv6 stateless NPT targets to the mangle table. Many users are
  complaining that this target does not work in the nat table, which is the
  wrong table for it, from Florian Westphal.

* Fix possible use before initialization in the netns init path of several
  conntrack protocol trackers (introduced recently while improving conntrack
  netns support), from Gao Feng.

* Fix incorrect initialization of copy_range in nfnetlink_queue, spotted
  by Eric Dumazet during the NFWS2013, patch from myself.

* Fix wrong calculation of next SCTP chunk in IPVS, from Julian Anastasov.

* Remove rcu_read_lock section in IPVS while calling ipv4_update_pmtu
  not required anymore after change introduced in 3.7, again from Julian.

* Fix SYN looping in IPVS state sync if the backup is used a real server
  in DR/TUN modes, this required a new /proc entry to disable the director
  function when acting as backup, also from Julian.

* Remove leftover IP_NF_QUEUE Kconfig after ip_queue removal, noted by
  Paul Bolle.
====================

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Pablo Neira Ayuso says:

====================
The following patchset contains 7 Netfilter/IPVS fixes for 3.9-rc, they are:

* Restrict IPv6 stateless NPT targets to the mangle table. Many users are
  complaining that this target does not work in the nat table, which is the
  wrong table for it, from Florian Westphal.

* Fix possible use before initialization in the netns init path of several
  conntrack protocol trackers (introduced recently while improving conntrack
  netns support), from Gao Feng.

* Fix incorrect initialization of copy_range in nfnetlink_queue, spotted
  by Eric Dumazet during the NFWS2013, patch from myself.

* Fix wrong calculation of next SCTP chunk in IPVS, from Julian Anastasov.

* Remove rcu_read_lock section in IPVS while calling ipv4_update_pmtu
  not required anymore after change introduced in 3.7, again from Julian.

* Fix SYN looping in IPVS state sync if the backup is used a real server
  in DR/TUN modes, this required a new /proc entry to disable the director
  function when acting as backup, also from Julian.

* Remove leftover IP_NF_QUEUE Kconfig after ip_queue removal, noted by
  Paul Bolle.
====================

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>netfilter: remove unused "config IP_NF_QUEUE"</title>
<updated>2013-03-19T23:11:43+00:00</updated>
<author>
<name>Paul Bolle</name>
<email>pebolle@tiscali.nl</email>
</author>
<published>2013-03-19T13:09:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=3dd6664fac7e6041bfc8756ae9e8c78f59108cd9'/>
<id>3dd6664fac7e6041bfc8756ae9e8c78f59108cd9</id>
<content type='text'>
Kconfig symbol IP_NF_QUEUE is unused since commit
d16cf20e2f2f13411eece7f7fb72c17d141c4a84 ("netfilter: remove ip_queue
support"). Let's remove it too.

Signed-off-by: Paul Bolle &lt;pebolle@tiscali.nl&gt;
Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Kconfig symbol IP_NF_QUEUE is unused since commit
d16cf20e2f2f13411eece7f7fb72c17d141c4a84 ("netfilter: remove ip_queue
support"). Let's remove it too.

Signed-off-by: Paul Bolle &lt;pebolle@tiscali.nl&gt;
Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>inet: limit length of fragment queue hash table bucket lists</title>
<updated>2013-03-19T14:28:36+00:00</updated>
<author>
<name>Hannes Frederic Sowa</name>
<email>hannes@stressinduktion.org</email>
</author>
<published>2013-03-15T11:32:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=5a3da1fe9561828d0ca7eca664b16ec2b9bf0055'/>
<id>5a3da1fe9561828d0ca7eca664b16ec2b9bf0055</id>
<content type='text'>
This patch introduces a constant limit of the fragment queue hash
table bucket list lengths. Currently the limit 128 is choosen somewhat
arbitrary and just ensures that we can fill up the fragment cache with
empty packets up to the default ip_frag_high_thresh limits. It should
just protect from list iteration eating considerable amounts of cpu.

If we reach the maximum length in one hash bucket a warning is printed.
This is implemented on the caller side of inet_frag_find to distinguish
between the different users of inet_fragment.c.

I dropped the out of memory warning in the ipv4 fragment lookup path,
because we already get a warning by the slab allocator.

Cc: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Cc: Jesper Dangaard Brouer &lt;jbrouer@redhat.com&gt;
Signed-off-by: Hannes Frederic Sowa &lt;hannes@stressinduktion.org&gt;
Acked-by: Eric Dumazet &lt;edumazet@google.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch introduces a constant limit of the fragment queue hash
table bucket list lengths. Currently the limit 128 is choosen somewhat
arbitrary and just ensures that we can fill up the fragment cache with
empty packets up to the default ip_frag_high_thresh limits. It should
just protect from list iteration eating considerable amounts of cpu.

If we reach the maximum length in one hash bucket a warning is printed.
This is implemented on the caller side of inet_frag_find to distinguish
between the different users of inet_fragment.c.

I dropped the out of memory warning in the ipv4 fragment lookup path,
because we already get a warning by the slab allocator.

Cc: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Cc: Jesper Dangaard Brouer &lt;jbrouer@redhat.com&gt;
Signed-off-by: Hannes Frederic Sowa &lt;hannes@stressinduktion.org&gt;
Acked-by: Eric Dumazet &lt;edumazet@google.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tcp: dont handle MTU reduction on LISTEN socket</title>
<updated>2013-03-18T17:31:28+00:00</updated>
<author>
<name>Eric Dumazet</name>
<email>edumazet@google.com</email>
</author>
<published>2013-03-18T07:01:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=0d4f0608619de59fd8169dd8e72aadc28d80e715'/>
<id>0d4f0608619de59fd8169dd8e72aadc28d80e715</id>
<content type='text'>
When an ICMP ICMP_FRAG_NEEDED (or ICMPV6_PKT_TOOBIG) message finds a
LISTEN socket, and this socket is currently owned by the user, we
set TCP_MTU_REDUCED_DEFERRED flag in listener tsq_flags.

This is bad because if we clone the parent before it had a chance to
clear the flag, the child inherits the tsq_flags value, and next
tcp_release_cb() on the child will decrement sk_refcnt.

Result is that we might free a live TCP socket, as reported by
Dormando.

IPv4: Attempt to release TCP socket in state 1

Fix this issue by testing sk_state against TCP_LISTEN early, so that we
set TCP_MTU_REDUCED_DEFERRED on appropriate sockets (not a LISTEN one)

This bug was introduced in commit 563d34d05786
(tcp: dont drop MTU reduction indications)

Reported-by: dormando &lt;dormando@rydia.net&gt;
Signed-off-by: Eric Dumazet &lt;edumazet@google.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When an ICMP ICMP_FRAG_NEEDED (or ICMPV6_PKT_TOOBIG) message finds a
LISTEN socket, and this socket is currently owned by the user, we
set TCP_MTU_REDUCED_DEFERRED flag in listener tsq_flags.

This is bad because if we clone the parent before it had a chance to
clear the flag, the child inherits the tsq_flags value, and next
tcp_release_cb() on the child will decrement sk_refcnt.

Result is that we might free a live TCP socket, as reported by
Dormando.

IPv4: Attempt to release TCP socket in state 1

Fix this issue by testing sk_state against TCP_LISTEN early, so that we
set TCP_MTU_REDUCED_DEFERRED on appropriate sockets (not a LISTEN one)

This bug was introduced in commit 563d34d05786
(tcp: dont drop MTU reduction indications)

Reported-by: dormando &lt;dormando@rydia.net&gt;
Signed-off-by: Eric Dumazet &lt;edumazet@google.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
</feed>
