From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933062AbdDEM6O (ORCPT ); Wed, 5 Apr 2017 08:58:14 -0400 Received: from shadbolt.e.decadent.org.uk ([88.96.1.126]:36028 "EHLO shadbolt.e.decadent.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932861AbdDEM5J (ORCPT ); Wed, 5 Apr 2017 08:57:09 -0400 Date: Wed, 5 Apr 2017 13:57:06 +0100 From: Ben Hutchings To: linux-kernel@vger.kernel.org, Andrew Morton , torvalds@linux-foundation.org, Jiri Slaby , stable@vger.kernel.org Cc: lwn@lwn.net Message-ID: <20170405125706.GX4152@decadent.org.uk> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="bmlge7Pg4VPvffji" Content-Disposition: inline X-Mailer: LinuxStableQueue (scripts by bwh) User-Agent: Mutt/1.5.23 (2014-03-12) X-SA-Exim-Connect-IP: X-SA-Exim-Mail-From: ben@decadent.org.uk Subject: Linux 3.2.88 X-SA-Exim-Version: 4.2.1 (built Mon, 26 Dec 2011 16:24:06 +0000) X-SA-Exim-Scanned: Yes (on shadbolt.decadent.org.uk) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --bmlge7Pg4VPvffji Content-Type: multipart/mixed; boundary="Ut0KX4oafLh8aNyr" Content-Disposition: inline --Ut0KX4oafLh8aNyr Content-Type: text/plain; charset=us-ascii Content-Disposition: inline I'm announcing the release of the 3.2.88 kernel. All users of the 3.2 kernel series should upgrade. The updated 3.2.y git tree can be found at: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-3.2.y and can be browsed at the normal kernel.org git web browser: https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git The diff from 3.2.87 is attached to this message. Ben. ------------ Makefile | 2 +- mm/huge_memory.c | 2 +- net/ipv4/ip_sockglue.c | 3 ++- net/l2tp/l2tp_ip.c | 5 +++-- security/keys/keyring.c | 6 +++--- 5 files changed, 10 insertions(+), 8 deletions(-) Ben Hutchings (2): keys: Guard against null match function in keyring_search_aux() Linux 3.2.88 Eric Dumazet (1): ipv4: keep skb->dst around in presence of IP options Guillaume Nault (1): l2tp: fix racy SOCK_ZAPPED flag check in l2tp_ip{,6}_bind() Michal Hocko (1): mm/huge_memory.c: fix up "mm/huge_memory.c: respect FOLL_FORCE/FOLL_COW for thp" backport --Ut0KX4oafLh8aNyr Content-Type: text/x-diff; charset=UTF-8; name="linux-3.2.88.patch" Content-Disposition: attachment; filename="linux-3.2.88.patch" Content-Transfer-Encoding: quoted-printable diff --git a/Makefile b/Makefile index 74390f97c6e5..4507a9f653f2 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ VERSION =3D 3 PATCHLEVEL =3D 2 -SUBLEVEL =3D 87 +SUBLEVEL =3D 88 EXTRAVERSION =3D NAME =3D Saber-toothed Squirrel =20 diff --git a/mm/huge_memory.c b/mm/huge_memory.c index 998efcee7201..d6e6cafdb2c9 100644 --- a/mm/huge_memory.c +++ b/mm/huge_memory.c @@ -989,7 +989,7 @@ struct page *follow_trans_huge_pmd(struct mm_struct *mm, VM_BUG_ON(!PageHead(page)); =20 if (flags & FOLL_WRITE && !can_follow_write_pmd(*pmd, page, flags)) - goto out; + return NULL; =20 if (flags & FOLL_TOUCH) { pmd_t _pmd; diff --git a/net/ipv4/ip_sockglue.c b/net/ipv4/ip_sockglue.c index b3648bbef0da..a6e1eeb02267 100644 --- a/net/ipv4/ip_sockglue.c +++ b/net/ipv4/ip_sockglue.c @@ -1009,7 +1009,8 @@ e_inval: */ int ip_queue_rcv_skb(struct sock *sk, struct sk_buff *skb) { - if (!(inet_sk(sk)->cmsg_flags & IP_CMSG_PKTINFO)) + if (!(inet_sk(sk)->cmsg_flags & IP_CMSG_PKTINFO) && + !IPCB(skb)->opt.optlen) skb_dst_drop(skb); return sock_queue_rcv_skb(sk, skb); } diff --git a/net/l2tp/l2tp_ip.c b/net/l2tp/l2tp_ip.c index eccc008908f4..67cc3e79ec27 100644 --- a/net/l2tp/l2tp_ip.c +++ b/net/l2tp/l2tp_ip.c @@ -257,8 +257,6 @@ static int l2tp_ip_bind(struct sock *sk, struct sockadd= r *uaddr, int addr_len) int ret; int chk_addr_ret; =20 - if (!sock_flag(sk, SOCK_ZAPPED)) - return -EINVAL; if (addr_len < sizeof(struct sockaddr_l2tpip)) return -EINVAL; if (addr->l2tp_family !=3D AF_INET) @@ -272,6 +270,9 @@ static int l2tp_ip_bind(struct sock *sk, struct sockadd= r *uaddr, int addr_len) read_unlock_bh(&l2tp_ip_lock); =20 lock_sock(sk); + if (!sock_flag(sk, SOCK_ZAPPED)) + goto out; + if (sk->sk_state !=3D TCP_CLOSE || addr_len < sizeof(struct sockaddr_l2tp= ip)) goto out; =20 diff --git a/security/keys/keyring.c b/security/keys/keyring.c index 37a7f3b28852..8f31d5f6cda5 100644 --- a/security/keys/keyring.c +++ b/security/keys/keyring.c @@ -336,6 +336,9 @@ key_ref_t keyring_search_aux(key_ref_t keyring_ref, if (keyring->type !=3D &key_type_keyring) goto error; =20 + if (!match) + return ERR_PTR(-ENOKEY); + rcu_read_lock(); =20 now =3D current_kernel_time(); @@ -484,9 +487,6 @@ key_ref_t keyring_search(key_ref_t keyring, struct key_type *type, const char *description) { - if (!type->match) - return ERR_PTR(-ENOKEY); - return keyring_search_aux(keyring, current->cred, type, description, type->match, false); } --Ut0KX4oafLh8aNyr-- --bmlge7Pg4VPvffji Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIVAwUBWOTpoue/yOyVhhEJAQps4hAAk+PIcIuAg/VPADGdugkSgf/3/IAFomer JzjsFGKLpU83W6EBVghCdVxRWX/fSi6qp6Nn0QnrehjybEyfr87Mkxe36eb7eKz8 Ocwz+ZaFiKZKUV4lhf6ok2e7uRkjCinQo2JEtKc4NVlTMiBTj8bZGKiUhaShHu9p 3vcp4PGwD6tg2bkCjF1fOzrXrLw4O0bydocSnnwZhgBnO36Is1fB5QCcVQ/xrzxx Xwu1G/RBcHRm4fAkGs6amJVb1u2v7lA+mEFcb9z3o/N/bdHTeO0V2dWy53qztWkL kOZERKMzMybqyJFCUNshena9tR+DDt4+gYubwkW2+msnvlljp7h0gbGpLJ3DYcaO KHFfzh5mJQDWf4hiMHz6IbuO1pc4V5svnpY4qOSjECEMm3MrzgiyOi77SbC0ZJpv eWDTimsB0NCQ/ArcvXOqjQCw3+g7qivNIjfLs90+v0u65Dt+BnDOY1P+1PmHd3s7 FgTcQL54EFHJ86D/vhiN2MeQs4E6QayllIvrF57hlJvxTBqizg1rgiFsTmktb5FW jnpdInXyLruUvC3FJ724mWY1iq4pDo2pSSzrsQuyncias17T2lOEAyfwDZ0/xsbD l0XPrUKRXIw3E9lctMlkhQGz320gqK68KH9T+tljDtf0mDPpS6bRTuWb7KftQaLs w8NqqV7P+y8= =+guu -----END PGP SIGNATURE----- --bmlge7Pg4VPvffji--