diff --git a/.gitignore b/.gitignore index 87e5faf..9a69cef 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,3 @@ -SOURCES/kernel-abi-whitelists-4.18.0-80.tar.bz2 -SOURCES/kernel-kabi-dw-4.18.0-80.tar.bz2 -SOURCES/linux-4.18.0-80.el8.tar.xz +SOURCES/kernel-abi-whitelists-4.18.0-80.1.1.tar.bz2 +SOURCES/kernel-kabi-dw-4.18.0-80.1.1.tar.bz2 +SOURCES/linux-4.18.0-80.1.2.el8_0.tar.xz diff --git a/.kernel.metadata b/.kernel.metadata index 9067327..e64a961 100644 --- a/.kernel.metadata +++ b/.kernel.metadata @@ -1,3 +1,3 @@ -0eb33304d878cf522484c7568ffacf5e13a90594 SOURCES/kernel-abi-whitelists-4.18.0-80.tar.bz2 -8c632d3af87ead71777d38bd55dd3c9439b6de60 SOURCES/kernel-kabi-dw-4.18.0-80.tar.bz2 -089a8374a860db00d6baf85a80d0a8483f9a01f4 SOURCES/linux-4.18.0-80.el8.tar.xz +bbc43aca63d0c09e707d957068809aaa14f4e63c SOURCES/kernel-abi-whitelists-4.18.0-80.1.1.tar.bz2 +8c632d3af87ead71777d38bd55dd3c9439b6de60 SOURCES/kernel-kabi-dw-4.18.0-80.1.1.tar.bz2 +01cbf5ff5bd978e7732841263751596888831886 SOURCES/linux-4.18.0-80.1.2.el8_0.tar.xz diff --git a/README.debrand b/README.debrand deleted file mode 100644 index 01c46d2..0000000 --- a/README.debrand +++ /dev/null @@ -1,2 +0,0 @@ -Warning: This package was configured for automatic debranding, but the changes -failed to apply. diff --git a/SOURCES/Module.kabi_ppc64le b/SOURCES/Module.kabi_ppc64le index 66167a5..0ecf388 100644 --- a/SOURCES/Module.kabi_ppc64le +++ b/SOURCES/Module.kabi_ppc64le @@ -38,8 +38,6 @@ 0xeb94d60b __put_cred vmlinux EXPORT_SYMBOL 0xccbfcd34 __put_page vmlinux EXPORT_SYMBOL 0x6301916d __put_task_struct vmlinux EXPORT_SYMBOL_GPL -0xddc8dd18 __radix_tree_insert vmlinux EXPORT_SYMBOL -0x572808d3 __radix_tree_next_slot vmlinux EXPORT_SYMBOL 0xe45c1b14 __release_region vmlinux EXPORT_SYMBOL 0x5eba9410 __request_region vmlinux EXPORT_SYMBOL 0xb5892fee __skb_gso_segment vmlinux EXPORT_SYMBOL @@ -350,12 +348,6 @@ 0xf140518e put_disk vmlinux EXPORT_SYMBOL 0xd1e4ec46 queue_delayed_work_on vmlinux EXPORT_SYMBOL 0x121da905 queue_work_on vmlinux EXPORT_SYMBOL -0x3e819312 radix_tree_delete vmlinux EXPORT_SYMBOL -0xae7deeea radix_tree_gang_lookup vmlinux EXPORT_SYMBOL -0xbd63726a radix_tree_gang_lookup_tag vmlinux EXPORT_SYMBOL -0x07491c63 radix_tree_next_chunk vmlinux EXPORT_SYMBOL -0x9754ec10 radix_tree_preload vmlinux EXPORT_SYMBOL -0x91564088 radix_tree_tag_set vmlinux EXPORT_SYMBOL 0x60a13e90 rcu_barrier vmlinux EXPORT_SYMBOL_GPL 0xacef9390 read_cache_pages vmlinux EXPORT_SYMBOL 0xfb6af58d recalc_sigpending vmlinux EXPORT_SYMBOL diff --git a/SOURCES/Module.kabi_s390x b/SOURCES/Module.kabi_s390x index dc93e32..584d45b 100644 --- a/SOURCES/Module.kabi_s390x +++ b/SOURCES/Module.kabi_s390x @@ -37,8 +37,6 @@ 0x25207859 __put_cred vmlinux EXPORT_SYMBOL 0xbd1b113a __put_page vmlinux EXPORT_SYMBOL 0x8a2e5412 __put_task_struct vmlinux EXPORT_SYMBOL_GPL -0x198cd08c __radix_tree_insert vmlinux EXPORT_SYMBOL -0xb2790f3c __radix_tree_next_slot vmlinux EXPORT_SYMBOL 0xe45c1b14 __release_region vmlinux EXPORT_SYMBOL 0x5eba9410 __request_region vmlinux EXPORT_SYMBOL 0x60b53515 __skb_gso_segment vmlinux EXPORT_SYMBOL @@ -316,12 +314,6 @@ 0xb5e6ea9c put_disk vmlinux EXPORT_SYMBOL 0xd1e4ec46 queue_delayed_work_on vmlinux EXPORT_SYMBOL 0x121da905 queue_work_on vmlinux EXPORT_SYMBOL -0x5386ec95 radix_tree_delete vmlinux EXPORT_SYMBOL -0x781ba89f radix_tree_gang_lookup vmlinux EXPORT_SYMBOL -0x123bbc9c radix_tree_gang_lookup_tag vmlinux EXPORT_SYMBOL -0x4f4096d8 radix_tree_next_chunk vmlinux EXPORT_SYMBOL -0x9754ec10 radix_tree_preload vmlinux EXPORT_SYMBOL -0x0a74ec92 radix_tree_tag_set vmlinux EXPORT_SYMBOL 0x60a13e90 rcu_barrier vmlinux EXPORT_SYMBOL_GPL 0xbeabc0e4 read_cache_pages vmlinux EXPORT_SYMBOL 0xfb6af58d recalc_sigpending vmlinux EXPORT_SYMBOL diff --git a/SOURCES/Module.kabi_x86_64 b/SOURCES/Module.kabi_x86_64 index 104d94b..e0cc6a2 100644 --- a/SOURCES/Module.kabi_x86_64 +++ b/SOURCES/Module.kabi_x86_64 @@ -45,8 +45,6 @@ 0x5a4896a8 __put_user_2 vmlinux EXPORT_SYMBOL 0xb2fd5ceb __put_user_4 vmlinux EXPORT_SYMBOL 0xb8e7ce2c __put_user_8 vmlinux EXPORT_SYMBOL -0x2dc7de88 __radix_tree_insert vmlinux EXPORT_SYMBOL -0x937b5e60 __radix_tree_next_slot vmlinux EXPORT_SYMBOL 0x9a8a0ca3 __register_nmi_handler vmlinux EXPORT_SYMBOL 0xe45c1b14 __release_region vmlinux EXPORT_SYMBOL 0x5eba9410 __request_region vmlinux EXPORT_SYMBOL @@ -399,12 +397,6 @@ 0x782e6c6b put_disk vmlinux EXPORT_SYMBOL 0xd1e4ec46 queue_delayed_work_on vmlinux EXPORT_SYMBOL 0x121da905 queue_work_on vmlinux EXPORT_SYMBOL -0xa79f6dfa radix_tree_delete vmlinux EXPORT_SYMBOL -0xe787139f radix_tree_gang_lookup vmlinux EXPORT_SYMBOL -0x929c1a90 radix_tree_gang_lookup_tag vmlinux EXPORT_SYMBOL -0x16866f44 radix_tree_next_chunk vmlinux EXPORT_SYMBOL -0x9754ec10 radix_tree_preload vmlinux EXPORT_SYMBOL -0x7eb71a81 radix_tree_tag_set vmlinux EXPORT_SYMBOL 0x60a13e90 rcu_barrier vmlinux EXPORT_SYMBOL_GPL 0x082ed22e read_cache_pages vmlinux EXPORT_SYMBOL 0xfb6af58d recalc_sigpending vmlinux EXPORT_SYMBOL diff --git a/SOURCES/mod-extra-blacklist.sh b/SOURCES/mod-extra-blacklist.sh index 9569ef6..c705a6c 100755 --- a/SOURCES/mod-extra-blacklist.sh +++ b/SOURCES/mod-extra-blacklist.sh @@ -1,7 +1,7 @@ #!/bin/bash -buildroot="$1" -kernel_base="$2" +list="$1" +buildroot=${list%/*} blacklist() { @@ -18,7 +18,7 @@ __EOF__ check_blacklist() { - if modinfo "$1" | grep -q '^alias:\s\+net-'; then + if modinfo "$buildroot/$1" | grep -q '^alias:\s\+net-'; then mod="${1##*/}" mod="${mod%.ko*}" echo "$mod has an alias that allows auto-loading. Blacklisting." @@ -44,5 +44,15 @@ foreachp() } [ -d "$buildroot/etc/modprobe.d/" ] || mkdir -p "$buildroot/etc/modprobe.d/" -find "$buildroot/$kernel_base/extra" -name "*.ko*" | \ - foreachp check_blacklist + +if [ -s $list ]; then + cat $list | foreachp check_blacklist + if ls $buildroot/etc/modprobe.d/* >& /dev/null ; then + echo "%defattr(-,root,root)" >> $list + echo "%config(noreplace) /etc/modprobe.d/*-blacklist.conf" >> $list + fi +else + # If modules-extra.list is empty the %files section will throw an + # error. Add a dummy entry to workaround the problem. + echo "%defattr(-,root,root)" >> $list +fi diff --git a/SOURCES/mod-extra.sh b/SOURCES/mod-extra.sh index d121bd0..fd555ba 100755 --- a/SOURCES/mod-extra.sh +++ b/SOURCES/mod-extra.sh @@ -1,17 +1,18 @@ #! /bin/bash -Dir=$1 -List=$2 +Rpmdir=$1 +Dir=$Rpmdir/$2 +List=$3 pushd $Dir rm -rf modnames find . -name "*.ko" -type f > modnames # Look through all of the modules, and throw any that have a dependency in # our list into the list as well. -rm -rf dep.list dep2.list +rm -rf dep.list rm -rf req.list req2.list touch dep.list req.list -cp $2 . +cp $List . for dep in `cat modnames` do @@ -48,33 +49,12 @@ do # get the path for the module modpath=`grep /$mod modnames` ||: [ -z "$modpath" ] && continue; - echo $modpath >> dep.list + echo /lib/modules/$(basename $Dir)/${modpath#"./"} >> dep.list done -sort -u dep.list > dep2.list - -# now move the modules into the extra/ directory -for mod in `cat dep2.list` -do - newpath=`dirname $mod | sed -e 's/kernel\//extra\//'` - mkdir -p $newpath - mv $mod $newpath -done - -popd - -# If we're signing modules, we can't leave the .mod files for the .ko files -# we've moved in .tmp_versions/. Remove them so the Kbuild 'modules_sign' -# target doesn't try to sign a non-existent file. This is kinda ugly, but -# so is modules-extra. - -for mod in `cat ${Dir}/dep2.list` -do - modfile=`basename $mod | sed -e 's/.ko/.mod/'` - rm .tmp_versions/$modfile -done - -pushd $Dir -rm modnames dep.list dep2.list req.list req2.list +sort -u dep.list > $Rpmdir/modules-extra.list +rm modnames dep.list req.list req2.list rm mod-extra.list mod-extra2.list mod-extra3.list popd + +sed -i "s|^\/||g" $Rpmdir/modules-extra.list diff --git a/SPECS/kernel.spec b/SPECS/kernel.spec index 490e1ca..9664753 100644 --- a/SPECS/kernel.spec +++ b/SPECS/kernel.spec @@ -7,7 +7,7 @@ Summary: The Linux kernel # For internal testing builds during development, it should be 0. %global released_kernel 1 -%global distro_build 80 +%global distro_build 80.1.1 # Sign the x86_64 kernel for secure boot authentication %ifarch x86_64 aarch64 @@ -33,10 +33,10 @@ Summary: The Linux kernel # define buildid .local %define rpmversion 4.18.0 -%define pkgrelease 80.el8 +%define pkgrelease 80.1.2.el8_0 # allow pkg_release to have configurable %%{?dist} tag -%define specrelease 80%{?dist} +%define specrelease 80.1.2%{?dist} %define pkg_release %{specrelease}%{?buildid} @@ -45,6 +45,7 @@ Summary: The Linux kernel # All should default to 1 (enabled) and be flipped to 0 (disabled) # by later arch-specific checks. +%define _with_kabidupchk 1 # The following build options are enabled by default. # Use either --without in your rpmbuild command or force values # to 0 in here to disable them. @@ -1086,7 +1087,6 @@ BuildKernel() { mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/build (cd $RPM_BUILD_ROOT/lib/modules/$KernelVer ; ln -s build source) # dirs for additional modules per module-init-tools, kbuild/modules.txt - mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/extra mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/updates mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/weak-updates # first copy everything @@ -1289,11 +1289,6 @@ BuildKernel() { rm -f modules.{alias*,builtin.bin,dep*,*map,symbols*,devname,softdep} popd - # Call the modules-extra script to move things around - %{SOURCE17} $RPM_BUILD_ROOT/lib/modules/$KernelVer %{SOURCE16} - # Blacklist net autoloadable modules in modules-extra - %{SOURCE19} $RPM_BUILD_ROOT lib/modules/$KernelVer - # # Generate the kernel-core and kernel-modules files lists # @@ -1305,8 +1300,23 @@ BuildKernel() { mkdir restore cp -r lib/modules/$KernelVer/* restore/. - # don't include anything going into k-m-e in the file lists - rm -rf lib/modules/$KernelVer/extra + # Call the modules-extra script to move things around. Note cleanup below. + %{SOURCE17} $RPM_BUILD_ROOT /lib/modules/$KernelVer %{SOURCE16} + # Blacklist net autoloadable modules in modules-extra + %{SOURCE19} $RPM_BUILD_ROOT/modules-extra.list + cat $RPM_BUILD_ROOT/modules-extra.list | xargs rm -f + + # If we're signing modules, we can't leave the .mod files for the .ko files + # we've moved in .tmp_versions/. Remove them so the Kbuild 'modules_sign' + # target doesn't try to sign a non-existent file. This is kinda ugly, but + # so is modules-extra. + popd + for mod in `cat $RPM_BUILD_ROOT/modules-extra.list` + do + modfile=`basename $mod | sed -e 's/.ko/.mod/'` + [ -f "$modfile" ] && rm .tmp_versions/$modfile + done + pushd $RPM_BUILD_ROOT if [ $DoModules -eq 1 ]; then # Find all the module files and filter them out into the core and @@ -1330,6 +1340,8 @@ BuildKernel() { # Ensure important files/directories exist to let the packaging succeed echo '%%defattr(-,-,-)' > modules.list echo '%%defattr(-,-,-)' > k-d.list + # This overwrites anything created by %{SOURCE19} + echo '%%defattr(-,-,-)' > modules-extra.list mkdir -p lib/modules/$KernelVer/kernel # Add files usually created by make modules, needed to prevent errors # thrown by depmod during package installation @@ -1357,11 +1369,14 @@ BuildKernel() { sed -e 's/^lib*/\/lib/' %{?zipsed} $RPM_BUILD_ROOT/k-d.list > ../kernel${Flavour:+-${Flavour}}-modules.list sed -e 's/^lib*/%dir \/lib/' %{?zipsed} $RPM_BUILD_ROOT/module-dirs.list > ../kernel${Flavour:+-${Flavour}}-core.list sed -e 's/^lib*/\/lib/' %{?zipsed} $RPM_BUILD_ROOT/modules.list >> ../kernel${Flavour:+-${Flavour}}-core.list + sed -e 's/^lib*/\/lib/' %{?zipsed} $RPM_BUILD_ROOT/modules-extra.list >> ../kernel${Flavour:+-${Flavour}}-modules-extra.list # Cleanup rm -f $RPM_BUILD_ROOT/k-d.list rm -f $RPM_BUILD_ROOT/modules.list rm -f $RPM_BUILD_ROOT/module-dirs.list + # Cleanup file created by %{SOURCE17} + rm -f $RPM_BUILD_ROOT/modules-extra.list %if %{signmodules} if [ $DoModules -eq 1 ]; then @@ -2032,10 +2047,7 @@ fi %defattr(-,root,root)\ %defverify(not mtime)\ /usr/src/kernels/%{KVERREL}%{?3:+%{3}}\ -%{expand:%%files %{?3:%{3}-}modules-extra}\ -%defattr(-,root,root)\ -%config(noreplace) /etc/modprobe.d/*-blacklist.conf\ -/lib/modules/%{KVERREL}%{?3:+%{3}}/extra\ +%{expand:%%files -f kernel-%{?3:%{3}-}modules-extra.list %{?3:%{3}-}modules-extra}\ %if %{with_debuginfo}\ %ifnarch noarch\ %{expand:%%files -f debuginfo%{?3}.list %{?3:%{3}-}debuginfo}\ @@ -2058,8 +2070,40 @@ fi # # %changelog -* Tue May 07 2019 CentOS Sources - 4.18.0-80.el8.centos -- Apply debranding changes +* Sun Apr 28 2019 Frantisek Hrbata [4.18.0-80.1.2.el8_0] +- [arm64] arm64/speculation: Support 'mitigations=' cmdline option (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [s390] s390/speculation: Support 'mitigations=' cmdline option (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [powerpc] powerpc/speculation: Support 'mitigations=' cmdline option (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [powerpc] powerpc/64: Disable the speculation barrier from the command line (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/speculation/mds: Add 'mitigations=' support for MDS (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/speculation: Support 'mitigations=' cmdline option (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [kernel] cpu/speculation: Add 'mitigations=' cmdline option (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/speculation/mds: Print SMT vulnerable on MSBDS with mitigations off (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/speculation/mds: Fix comment (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/speculation/mds: Add SMT warning message (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/speculation: Move arch_smt_update() call to after mitigation decisions (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/speculation/mds: Add mds=full, nosmt cmdline option (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [documentation] Documentation: Add MDS vulnerability documentation (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [documentation] Documentation: Move L1TF to separate directory (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/speculation/mds: Add mitigation mode VMWERV (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/speculation/mds: Add sysfs reporting for MDS (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/speculation/mds: Add mitigation control for MDS (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/speculation/mds: Conditionally clear CPU buffers on idle entry (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/kvm/vmx: Add MDS protection when L1D Flush is not active (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/speculation/mds: Clear CPU buffers on exit to user (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/speculation/mds: Add mds_clear_cpu_buffers() (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [kvm] x86/kvm: Expose X86_FEATURE_MD_CLEAR to guests (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/speculation/mds: Add BUG_MSBDS_ONLY (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/speculation/mds: Add basic bug infrastructure for MDS (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/speculation: Consolidate CPU whitelists (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/msr-index: Cleanup bit defines (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/speculation: Cast ~SPEC_CTRL_STIBP atomic value to int (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [x86] x86/cpu: Sanitize FAM6_ATOM naming (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [include] locking/atomics, asm-generic: Move some macros from to a new file (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} +- [tools] tools include: Adopt linux/bits.h (Josh Poimboeuf) [1698809 1698896 1699001 1690338 1690360 1690351] {CVE-2018-12130 CVE-2018-12127 CVE-2018-12126} + +* Sat Apr 27 2019 Frantisek Hrbata [4.18.0-80.1.1.el8_0] +- [zstream] switch to zstream (Frantisek Hrbata) * Wed Mar 13 2019 Frantisek Hrbata [4.18.0-80.el8] - [arm64] revert "arm64: tlb: Avoid synchronous TLBIs when freeing page tables" (Christoph von Recklinghausen) [1685697]