diff options
-rw-r--r-- | kernel.spec | 14 | ||||
-rw-r--r-- | mm-khugepaged-Convert-VM_BUG_ON-to-collapse-fail.patch | 51 | ||||
-rw-r--r-- | sources | 2 | ||||
-rw-r--r-- | sunrpc-remove-incorrect-HMAC-request-initialization.patch | 54 |
4 files changed, 65 insertions, 56 deletions
diff --git a/kernel.spec b/kernel.spec index 82a22ecd9..781c1525b 100644 --- a/kernel.spec +++ b/kernel.spec @@ -658,14 +658,14 @@ Patch660: 0001-net-phy-mdio-bcm-unimac-fix-potential-NULL-dereferen.patch # rhbz 1549042 Patch661: drm-i915-dp-Write-to-SET_POWER-dpcd-to-enable-MST-hub..patch -# rhbz 1546709 -Patch662: mm-khugepaged-Convert-VM_BUG_ON-to-collapse-fail.patch - # CVE-2017-18232 rhbz 1558066 1558067 Patch663: 0001-scsi-libsas-direct-call-probe-and-destruct.patch # rhbz 1511786 -Patch 664: drm-nouveau-bl-fix-backlight-regression.patch +Patch664: drm-nouveau-bl-fix-backlight-regression.patch + +# rhbz 1558977 +Patch665: sunrpc-remove-incorrect-HMAC-request-initialization.patch # END OF PATCH DEFINITIONS @@ -1968,6 +1968,12 @@ fi # # %changelog +* Thu Mar 29 2018 Laura Abbott <labbott@redhat.com> - 4.15.14-200 +- Linux v4.15.14 + +* Thu Mar 29 2018 Jeremy Cline <jeremy@jcline.org> +- Fix mounting NFS with kerberos (rhbz 1558977) + * Mon Mar 26 2018 Laura Abbott <labbott@redhat.com> - 4.15.13-200 - Linux v4.15.13 diff --git a/mm-khugepaged-Convert-VM_BUG_ON-to-collapse-fail.patch b/mm-khugepaged-Convert-VM_BUG_ON-to-collapse-fail.patch deleted file mode 100644 index c5d3a0c0c..000000000 --- a/mm-khugepaged-Convert-VM_BUG_ON-to-collapse-fail.patch +++ /dev/null @@ -1,51 +0,0 @@ -From patchwork Thu Mar 15 15:23:53 2018 -Content-Type: text/plain; charset="utf-8" -MIME-Version: 1.0 -Content-Transfer-Encoding: 7bit -Subject: mm/khugepaged: Convert VM_BUG_ON() to collapse fail -From: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com> -X-Patchwork-Id: 10284785 -Message-Id: <20180315152353.27989-1-kirill.shutemov@linux.intel.com> -To: Andrew Morton <akpm@linux-foundation.org> -Cc: Laura Abbott <labbott@redhat.com>, linux-mm@kvack.org, - linux-kernel@vger.kernel.org, - "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com> -Date: Thu, 15 Mar 2018 18:23:53 +0300 - -khugepaged is not yet able to convert PTE-mapped huge pages back to PMD -mapped. We do not collapse such pages. See check khugepaged_scan_pmd(). - -But if between khugepaged_scan_pmd() and __collapse_huge_page_isolate() -somebody managed to instantiate THP in the range and then split the PMD -back to PTEs we would have a problem -- VM_BUG_ON_PAGE(PageCompound(page)) -will get triggered. - -It's possible since we drop mmap_sem during collapse to re-take for -write. - -Replace the VM_BUG_ON() with graceful collapse fail. - -Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com> -Fixes: b1caa957ae6d ("khugepaged: ignore pmd tables with THP mapped with ptes") ---- - mm/khugepaged.c | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/mm/khugepaged.c b/mm/khugepaged.c -index b7e2268dfc9a..c15da1ea7e63 100644 ---- a/mm/khugepaged.c -+++ b/mm/khugepaged.c -@@ -530,7 +530,12 @@ static int __collapse_huge_page_isolate(struct vm_area_struct *vma, - goto out; - } - -- VM_BUG_ON_PAGE(PageCompound(page), page); -+ /* TODO: teach khugepaged to collapse THP mapped with pte */ -+ if (PageCompound(page)) { -+ result = SCAN_PAGE_COMPOUND; -+ goto out; -+ } -+ - VM_BUG_ON_PAGE(!PageAnon(page), page); - - /* @@ -1,2 +1,2 @@ SHA512 (linux-4.15.tar.xz) = c00d92659df815a53dcac7dde145b742b1f20867d380c07cb09ddb3295d6ff10f8931b21ef0b09d7156923a3957b39d74d87c883300173b2e20690d2b4ec35ea -SHA512 (patch-4.15.13.xz) = 8e134ce5127806b1668c6b0cf96745de3d93ca276ee9072aa37ad1c7caecdd21f64b1afc259ddf9a065ce3ec09866a8837f6fa8740f9c28634f002e4acaecd24 +SHA512 (patch-4.15.14.xz) = d8192dbfa7f1b6eddd4d3f70b113bdddb11021d6f03cff70dbd8a9667c4465992d70de4cd6a3b9229abdb1b1eb8460a06ec1388e7d58ad6da62253f80c9f3567 diff --git a/sunrpc-remove-incorrect-HMAC-request-initialization.patch b/sunrpc-remove-incorrect-HMAC-request-initialization.patch new file mode 100644 index 000000000..c31bb73bb --- /dev/null +++ b/sunrpc-remove-incorrect-HMAC-request-initialization.patch @@ -0,0 +1,54 @@ +From 5cdbcf4aa78b57c4f10892f20725174829cca191 Mon Sep 17 00:00:00 2001 +From: Eric Biggers <ebiggers@google.com> +Date: Wed, 28 Mar 2018 10:57:22 -0700 +Subject: [PATCH] sunrpc: remove incorrect HMAC request initialization + +make_checksum_hmac_md5() is allocating an HMAC transform and doing +crypto API calls in the following order: + + crypto_ahash_init() + crypto_ahash_setkey() + crypto_ahash_digest() + +This is wrong because it makes no sense to init() the request before a +key has been set, given that the initial state depends on the key. And +digest() is short for init() + update() + final(), so in this case +there's no need to explicitly call init() at all. + +Before commit 9fa68f620041 ("crypto: hash - prevent using keyed hashes +without setting key") the extra init() had no real effect, at least for +the software HMAC implementation. (There are also hardware drivers that +implement HMAC-MD5, and it's not immediately obvious how gracefully they +handle init() before setkey().) But now the crypto API detects this +incorrect initialization and returns -ENOKEY. This is breaking NFS +mounts in some cases. + +Fix it by removing the incorrect call to crypto_ahash_init(). + +Reported-by: Michael Young <m.a.young@durham.ac.uk> +Fixes: 9fa68f620041 ("crypto: hash - prevent using keyed hashes without setting key") +Fixes: fffdaef2eb4a ("gss_krb5: Add support for rc4-hmac encryption") +Cc: stable@vger.kernel.org +Signed-off-by: Eric Biggers <ebiggers@google.com> +Signed-off-by: Jeremy Cline <jeremy@jcline.org> +--- + net/sunrpc/auth_gss/gss_krb5_crypto.c | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/net/sunrpc/auth_gss/gss_krb5_crypto.c b/net/sunrpc/auth_gss/gss_krb5_crypto.c +index 12649c9fedab..8654494b4d0a 100644 +--- a/net/sunrpc/auth_gss/gss_krb5_crypto.c ++++ b/net/sunrpc/auth_gss/gss_krb5_crypto.c +@@ -237,9 +237,6 @@ make_checksum_hmac_md5(struct krb5_ctx *kctx, char *header, int hdrlen, + + ahash_request_set_callback(req, CRYPTO_TFM_REQ_MAY_SLEEP, NULL, NULL); + +- err = crypto_ahash_init(req); +- if (err) +- goto out; + err = crypto_ahash_setkey(hmac_md5, cksumkey, kctx->gk5e->keylength); + if (err) + goto out; +-- +2.16.2 + |