<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/net/ipv6, branch v4.9</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v4.9</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v4.9'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2016-12-02T18:34:58Z</updated>
<entry>
<title>ip6_offload: check segs for NULL in ipv6_gso_segment.</title>
<updated>2016-12-02T18:34:58Z</updated>
<author>
<name>Artem Savkov</name>
<email>asavkov@redhat.com</email>
</author>
<published>2016-12-01T13:06:04Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=6b6ebb6b01c873d0cfe3449e8a1219ee6e5fc022'/>
<id>urn:sha1:6b6ebb6b01c873d0cfe3449e8a1219ee6e5fc022</id>
<content type='text'>
segs needs to be checked for being NULL in ipv6_gso_segment() before calling
skb_shinfo(segs), otherwise kernel can run into a NULL-pointer dereference:

[   97.811262] BUG: unable to handle kernel NULL pointer dereference at 00000000000000cc
[   97.819112] IP: [&lt;ffffffff816e52f9&gt;] ipv6_gso_segment+0x119/0x2f0
[   97.825214] PGD 0 [   97.827047]
[   97.828540] Oops: 0000 [#1] SMP
[   97.831678] Modules linked in: vhost_net vhost macvtap macvlan nfsv3 rpcsec_gss_krb5
nfsv4 dns_resolver nfs fscache xt_CHECKSUM iptable_mangle ipt_MASQUERADE nf_nat_masquerade_ipv4
iptable_nat nf_nat_ipv4 nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack nf_conntrack
ipt_REJECT nf_reject_ipv4 tun ebtable_filter ebtables ip6table_filter ip6_tables iptable_filter
bridge stp llc snd_hda_codec_realtek snd_hda_codec_hdmi snd_hda_codec_generic snd_hda_intel
snd_hda_codec edac_mce_amd snd_hda_core edac_core snd_hwdep kvm_amd snd_seq kvm snd_seq_device
snd_pcm irqbypass snd_timer ppdev parport_serial snd parport_pc k10temp pcspkr soundcore parport
sp5100_tco shpchp sg wmi i2c_piix4 acpi_cpufreq nfsd auth_rpcgss nfs_acl lockd grace sunrpc
ip_tables xfs libcrc32c sr_mod cdrom sd_mod ata_generic pata_acpi amdkfd amd_iommu_v2 radeon
broadcom bcm_phy_lib i2c_algo_bit drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops
ttm ahci serio_raw tg3 firewire_ohci libahci pata_atiixp drm ptp libata firewire_core pps_core
i2c_core crc_itu_t fjes dm_mirror dm_region_hash dm_log dm_mod
[   97.927721] CPU: 1 PID: 3504 Comm: vhost-3495 Not tainted 4.9.0-7.el7.test.x86_64 #1
[   97.935457] Hardware name: AMD Snook/Snook, BIOS ESK0726A 07/26/2010
[   97.941806] task: ffff880129a1c080 task.stack: ffffc90001bcc000
[   97.947720] RIP: 0010:[&lt;ffffffff816e52f9&gt;]  [&lt;ffffffff816e52f9&gt;] ipv6_gso_segment+0x119/0x2f0
[   97.956251] RSP: 0018:ffff88012fc43a10  EFLAGS: 00010207
[   97.961557] RAX: 0000000000000000 RBX: ffff8801292c8700 RCX: 0000000000000594
[   97.968687] RDX: 0000000000000593 RSI: ffff880129a846c0 RDI: 0000000000240000
[   97.975814] RBP: ffff88012fc43a68 R08: ffff880129a8404e R09: 0000000000000000
[   97.982942] R10: 0000000000000000 R11: ffff880129a84076 R12: 00000020002949b3
[   97.990070] R13: ffff88012a580000 R14: 0000000000000000 R15: ffff88012a580000
[   97.997198] FS:  0000000000000000(0000) GS:ffff88012fc40000(0000) knlGS:0000000000000000
[   98.005280] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   98.011021] CR2: 00000000000000cc CR3: 0000000126c5d000 CR4: 00000000000006e0
[   98.018149] Stack:
[   98.020157]  00000000ffffffff ffff88012fc43ac8 ffffffffa017ad0a 000000000000000e
[   98.027584]  0000001300000000 0000000077d59998 ffff8801292c8700 00000020002949b3
[   98.035010]  ffff88012a580000 0000000000000000 ffff88012a580000 ffff88012fc43a98
[   98.042437] Call Trace:
[   98.044879]  &lt;IRQ&gt; [   98.046803]  [&lt;ffffffffa017ad0a&gt;] ? tg3_start_xmit+0x84a/0xd60 [tg3]
[   98.053156]  [&lt;ffffffff815eeee0&gt;] skb_mac_gso_segment+0xb0/0x130
[   98.059158]  [&lt;ffffffff815eefd3&gt;] __skb_gso_segment+0x73/0x110
[   98.064985]  [&lt;ffffffff815ef40d&gt;] validate_xmit_skb+0x12d/0x2b0
[   98.070899]  [&lt;ffffffff815ef5d2&gt;] validate_xmit_skb_list+0x42/0x70
[   98.077073]  [&lt;ffffffff81618560&gt;] sch_direct_xmit+0xd0/0x1b0
[   98.082726]  [&lt;ffffffff815efd86&gt;] __dev_queue_xmit+0x486/0x690
[   98.088554]  [&lt;ffffffff8135c135&gt;] ? cpumask_next_and+0x35/0x50
[   98.094380]  [&lt;ffffffff815effa0&gt;] dev_queue_xmit+0x10/0x20
[   98.099863]  [&lt;ffffffffa09ce057&gt;] br_dev_queue_push_xmit+0xa7/0x170 [bridge]
[   98.106907]  [&lt;ffffffffa09ce161&gt;] br_forward_finish+0x41/0xc0 [bridge]
[   98.113430]  [&lt;ffffffff81627cf2&gt;] ? nf_iterate+0x52/0x60
[   98.118735]  [&lt;ffffffff81627d6b&gt;] ? nf_hook_slow+0x6b/0xc0
[   98.124216]  [&lt;ffffffffa09ce32c&gt;] __br_forward+0x14c/0x1e0 [bridge]
[   98.130480]  [&lt;ffffffffa09ce120&gt;] ? br_dev_queue_push_xmit+0x170/0x170 [bridge]
[   98.137785]  [&lt;ffffffffa09ce4bd&gt;] br_forward+0x9d/0xb0 [bridge]
[   98.143701]  [&lt;ffffffffa09cfbb7&gt;] br_handle_frame_finish+0x267/0x560 [bridge]
[   98.150834]  [&lt;ffffffffa09d0064&gt;] br_handle_frame+0x174/0x2f0 [bridge]
[   98.157355]  [&lt;ffffffff8102fb89&gt;] ? sched_clock+0x9/0x10
[   98.162662]  [&lt;ffffffff810b63b2&gt;] ? sched_clock_cpu+0x72/0xa0
[   98.168403]  [&lt;ffffffff815eccf5&gt;] __netif_receive_skb_core+0x1e5/0xa20
[   98.174926]  [&lt;ffffffff813659f9&gt;] ? timerqueue_add+0x59/0xb0
[   98.180580]  [&lt;ffffffff815ed548&gt;] __netif_receive_skb+0x18/0x60
[   98.186494]  [&lt;ffffffff815ee625&gt;] process_backlog+0x95/0x140
[   98.192145]  [&lt;ffffffff815edccd&gt;] net_rx_action+0x16d/0x380
[   98.197713]  [&lt;ffffffff8170cff1&gt;] __do_softirq+0xd1/0x283
[   98.203106]  [&lt;ffffffff8170b2bc&gt;] do_softirq_own_stack+0x1c/0x30
[   98.209107]  &lt;EOI&gt; [   98.211029]  [&lt;ffffffff8108a5c0&gt;] do_softirq+0x50/0x60
[   98.216166]  [&lt;ffffffff815ec853&gt;] netif_rx_ni+0x33/0x80
[   98.221386]  [&lt;ffffffffa09eeff7&gt;] tun_get_user+0x487/0x7f0 [tun]
[   98.227388]  [&lt;ffffffffa09ef3ab&gt;] tun_sendmsg+0x4b/0x60 [tun]
[   98.233129]  [&lt;ffffffffa0b68932&gt;] handle_tx+0x282/0x540 [vhost_net]
[   98.239392]  [&lt;ffffffffa0b68c25&gt;] handle_tx_kick+0x15/0x20 [vhost_net]
[   98.245916]  [&lt;ffffffffa0abacfe&gt;] vhost_worker+0x9e/0xf0 [vhost]
[   98.251919]  [&lt;ffffffffa0abac60&gt;] ? vhost_umem_alloc+0x40/0x40 [vhost]
[   98.258440]  [&lt;ffffffff81003a47&gt;] ? do_syscall_64+0x67/0x180
[   98.264094]  [&lt;ffffffff810a44d9&gt;] kthread+0xd9/0xf0
[   98.268965]  [&lt;ffffffff810a4400&gt;] ? kthread_park+0x60/0x60
[   98.274444]  [&lt;ffffffff8170a4d5&gt;] ret_from_fork+0x25/0x30
[   98.279836] Code: 8b 93 d8 00 00 00 48 2b 93 d0 00 00 00 4c 89 e6 48 89 df 66 89 93 c2 00 00 00 ff 10 48 3d 00 f0 ff ff 49 89 c2 0f 87 52 01 00 00 &lt;41&gt; 8b 92 cc 00 00 00 48 8b 80 d0 00 00 00 44 0f b7 74 10 06 66
[   98.299425] RIP  [&lt;ffffffff816e52f9&gt;] ipv6_gso_segment+0x119/0x2f0
[   98.305612]  RSP &lt;ffff88012fc43a10&gt;
[   98.309094] CR2: 00000000000000cc
[   98.312406] ---[ end trace 726a2c7a2d2d78d0 ]---

Signed-off-by: Artem Savkov &lt;asavkov@redhat.com&gt;
Acked-by: Eric Dumazet &lt;edumazet@google.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Revert: "ip6_tunnel: Update skb-&gt;protocol to ETH_P_IPV6 in ip6_tnl_xmit()"</title>
<updated>2016-12-02T17:34:22Z</updated>
<author>
<name>Eli Cooper</name>
<email>elicooper@gmx.com</email>
</author>
<published>2016-12-01T02:05:12Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=80d1106aeaf689ab5fdf33020c5fecd269b31c88'/>
<id>urn:sha1:80d1106aeaf689ab5fdf33020c5fecd269b31c88</id>
<content type='text'>
This reverts commit ae148b085876fa771d9ef2c05f85d4b4bf09ce0d
("ip6_tunnel: Update skb-&gt;protocol to ETH_P_IPV6 in ip6_tnl_xmit()").

skb-&gt;protocol is now set in __ip_local_out() and __ip6_local_out() before
dst_output() is called. It is no longer necessary to do it for each tunnel.

Cc: stable@vger.kernel.org
Signed-off-by: Eli Cooper &lt;elicooper@gmx.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ipv6: Set skb-&gt;protocol properly for local output</title>
<updated>2016-12-02T17:34:22Z</updated>
<author>
<name>Eli Cooper</name>
<email>elicooper@gmx.com</email>
</author>
<published>2016-12-01T02:05:11Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=b4e479a96fc398ccf83bb1cffb4ffef8631beaf1'/>
<id>urn:sha1:b4e479a96fc398ccf83bb1cffb4ffef8631beaf1</id>
<content type='text'>
When xfrm is applied to TSO/GSO packets, it follows this path:

    xfrm_output() -&gt; xfrm_output_gso() -&gt; skb_gso_segment()

where skb_gso_segment() relies on skb-&gt;protocol to function properly.

This patch sets skb-&gt;protocol to ETH_P_IPV6 before dst_output() is called,
fixing a bug where GSO packets sent through an ipip6 tunnel are dropped
when xfrm is involved.

Cc: stable@vger.kernel.org
Signed-off-by: Eli Cooper &lt;elicooper@gmx.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/klassert/ipsec</title>
<updated>2016-12-01T16:35:49Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2016-12-01T16:35:49Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7bbf91ce27dd83cae1452995b15d358db92a8235'/>
<id>urn:sha1:7bbf91ce27dd83cae1452995b15d358db92a8235</id>
<content type='text'>
Steffen Klassert says:

====================
pull request (net): ipsec 2016-12-01

1) Change the error value when someone tries to run 32bit
   userspace on a 64bit host from -ENOTSUPP to the userspace
   exported -EOPNOTSUPP. Fix from Yi Zhao.

2) On inbound, ESN sequence numbers are already in network
   byte order. So don't try to convert it again, this fixes
   integrity verification for ESN. Fixes from Tobias Brunner.

Please pull or let me know if there are problems.
====================

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf</title>
<updated>2016-12-01T16:04:41Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2016-12-01T16:04:41Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=3d2dd617fb3c6430e438038070d2d2fb423725f9'/>
<id>urn:sha1:3d2dd617fb3c6430e438038070d2d2fb423725f9</id>
<content type='text'>
Pablo Neira Ayuso says:

====================
Netfilter fixes for net

This is a large batch of Netfilter fixes for net, they are:

1) Three patches to fix NAT conversion to rhashtable: Switch to rhlist
   structure that allows to have several objects with the same key.
   Moreover, fix wrong comparison logic in nf_nat_bysource_cmp() as this is
   expecting a return value similar to memcmp(). Change location of
   the nat_bysource field in the nf_conn structure to avoid zeroing
   this as it breaks interaction with SLAB_DESTROY_BY_RCU and lead us
   to crashes. From Florian Westphal.

2) Don't allow malformed fragments go through in IPv6, drop them,
   otherwise we hit GPF, patch from Florian Westphal.

3) Fix crash if attributes are missing in nft_range, from Liping Zhang.

4) Fix arptables 32-bits userspace 64-bits kernel compat, from Hongxu Jia.

5) Two patches from David Ahern to fix netfilter interaction with vrf.
   From David Ahern.

6) Fix element timeout calculation in nf_tables, we take milliseconds
   from userspace, but we use jiffies from kernelspace. Patch from
   Anders K.  Pedersen.

7) Missing validation length netlink attribute for nft_hash, from
   Laura Garcia.

8) Fix nf_conntrack_helper documentation, we don't default to off
   anymore for a bit of time so let's get this in sync with the code.

I know is late but I think these are important, specifically the NAT
bits, as they are mostly addressing fallout from recent changes. I also
read there are chances to have -rc8, if that is the case, that would
also give us a bit more time to test this.
====================

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>l2tp: lock socket before checking flags in connect()</title>
<updated>2016-11-30T19:14:07Z</updated>
<author>
<name>Guillaume Nault</name>
<email>g.nault@alphalink.fr</email>
</author>
<published>2016-11-29T12:09:44Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=0382a25af3c771a8e4d5e417d1834cbe28c2aaac'/>
<id>urn:sha1:0382a25af3c771a8e4d5e417d1834cbe28c2aaac</id>
<content type='text'>
Socket flags aren't updated atomically, so the socket must be locked
while reading the SOCK_ZAPPED flag.

This issue exists for both l2tp_ip and l2tp_ip6. For IPv6, this patch
also brings error handling for __ip6_datagram_connect() failures.

Signed-off-by: Guillaume Nault &lt;g.nault@alphalink.fr&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>esp6: Fix integrity verification when ESN are used</title>
<updated>2016-11-30T10:10:16Z</updated>
<author>
<name>Tobias Brunner</name>
<email>tobias@strongswan.org</email>
</author>
<published>2016-11-29T16:05:25Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=a55e23864d381c5a4ef110df94b00b2fe121a70d'/>
<id>urn:sha1:a55e23864d381c5a4ef110df94b00b2fe121a70d</id>
<content type='text'>
When handling inbound packets, the two halves of the sequence number
stored on the skb are already in network order.

Fixes: 000ae7b2690e ("esp6: Switch to new AEAD interface")
Signed-off-by: Tobias Brunner &lt;tobias@strongswan.org&gt;
Acked-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
Signed-off-by: Steffen Klassert &lt;steffen.klassert@secunet.com&gt;
</content>
</entry>
<entry>
<title>netfilter: ipv6: nf_defrag: drop mangled skb on ream error</title>
<updated>2016-11-29T19:23:58Z</updated>
<author>
<name>Florian Westphal</name>
<email>fw@strlen.de</email>
</author>
<published>2016-11-29T01:17:34Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=9b57da0630c9fd36ed7a20fc0f98dc82cc0777fa'/>
<id>urn:sha1:9b57da0630c9fd36ed7a20fc0f98dc82cc0777fa</id>
<content type='text'>
Dmitry Vyukov reported GPF in network stack that Andrey traced down to
negative nh offset in nf_ct_frag6_queue().

Problem is that all network headers before fragment header are pulled.
Normal ipv6 reassembly will drop the skb when errors occur further down
the line.

netfilter doesn't do this, and instead passed the original fragment
along.  That was also fine back when netfilter ipv6 defrag worked with
cloned fragments, as the original, pristine fragment was passed on.

So we either have to undo the pull op, or discard such fragments.
Since they're malformed after all (e.g. overlapping fragment) it seems
preferrable to just drop them.

Same for temporary errors -- it doesn't make sense to accept (and
perhaps forward!) only some fragments of same datagram.

Fixes: 029f7f3b8701cc7ac ("netfilter: ipv6: nf_defrag: avoid/free clone operations")
Reported-by: Dmitry Vyukov &lt;dvyukov@google.com&gt;
Debugged-by: Andrey Konovalov &lt;andreyknvl@google.com&gt;
Diagnosed-by: Eric Dumazet &lt;Eric Dumazet &lt;edumazet@google.com&gt;
Signed-off-by: Florian Westphal &lt;fw@strlen.de&gt;
Acked-by: Eric Dumazet &lt;edumazet@google.com&gt;
Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</content>
</entry>
<entry>
<title>net: handle no dst on skb in icmp6_send</title>
<updated>2016-11-28T21:13:01Z</updated>
<author>
<name>David Ahern</name>
<email>dsa@cumulusnetworks.com</email>
</author>
<published>2016-11-28T02:52:53Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=79dc7e3f1cd323be4c81aa1a94faa1b3ed987fb2'/>
<id>urn:sha1:79dc7e3f1cd323be4c81aa1a94faa1b3ed987fb2</id>
<content type='text'>
Andrey reported the following while fuzzing the kernel with syzkaller:

kasan: CONFIG_KASAN_INLINE enabled
kasan: GPF could be caused by NULL-ptr deref or user memory access
general protection fault: 0000 [#1] SMP KASAN
Modules linked in:
CPU: 0 PID: 3859 Comm: a.out Not tainted 4.9.0-rc6+ #429
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Bochs 01/01/2011
task: ffff8800666d4200 task.stack: ffff880067348000
RIP: 0010:[&lt;ffffffff833617ec&gt;]  [&lt;ffffffff833617ec&gt;]
icmp6_send+0x5fc/0x1e30 net/ipv6/icmp.c:451
RSP: 0018:ffff88006734f2c0  EFLAGS: 00010206
RAX: ffff8800666d4200 RBX: 0000000000000000 RCX: 0000000000000000
RDX: 0000000000000000 RSI: dffffc0000000000 RDI: 0000000000000018
RBP: ffff88006734f630 R08: ffff880064138418 R09: 0000000000000003
R10: dffffc0000000000 R11: 0000000000000005 R12: 0000000000000000
R13: ffffffff84e7e200 R14: ffff880064138484 R15: ffff8800641383c0
FS:  00007fb3887a07c0(0000) GS:ffff88006cc00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000020000000 CR3: 000000006b040000 CR4: 00000000000006f0
Stack:
 ffff8800666d4200 ffff8800666d49f8 ffff8800666d4200 ffffffff84c02460
 ffff8800666d4a1a 1ffff1000ccdaa2f ffff88006734f498 0000000000000046
 ffff88006734f440 ffffffff832f4269 ffff880064ba7456 0000000000000000
Call Trace:
 [&lt;ffffffff83364ddc&gt;] icmpv6_param_prob+0x2c/0x40 net/ipv6/icmp.c:557
 [&lt;     inline     &gt;] ip6_tlvopt_unknown net/ipv6/exthdrs.c:88
 [&lt;ffffffff83394405&gt;] ip6_parse_tlv+0x555/0x670 net/ipv6/exthdrs.c:157
 [&lt;ffffffff8339a759&gt;] ipv6_parse_hopopts+0x199/0x460 net/ipv6/exthdrs.c:663
 [&lt;ffffffff832ee773&gt;] ipv6_rcv+0xfa3/0x1dc0 net/ipv6/ip6_input.c:191
 ...

icmp6_send / icmpv6_send is invoked for both rx and tx paths. In both
cases the dst-&gt;dev should be preferred for determining the L3 domain
if the dst has been set on the skb. Fallback to the skb-&gt;dev if it has
not. This covers the case reported here where icmp6_send is invoked on
Rx before the route lookup.

Fixes: 5d41ce29e ("net: icmp6_send should use dst dev to determine L3 domain")
Reported-by: Andrey Konovalov &lt;andreyknvl@google.com&gt;
Signed-off-by: David Ahern &lt;dsa@cumulusnetworks.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/klassert/ipsec</title>
<updated>2016-11-28T01:21:48Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2016-11-28T01:21:48Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=8eb4adf60b8a2e0857643910c01aac98fe613466'/>
<id>urn:sha1:8eb4adf60b8a2e0857643910c01aac98fe613466</id>
<content type='text'>
Steffen Klassert says:

====================
pull request (net): ipsec 2016-11-25

1) Fix a refcount leak in vti6.
   From Nicolas Dichtel.

2) Fix a wrong if statement in xfrm_sk_policy_lookup.
   From Florian Westphal.

3) The flowcache watermarks are per cpu. Take this into
   account when comparing to the threshold where we
   refusing new allocations. From Miroslav Urbanek.

Please pull or let me know if there are problems.
====================

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
