夏季休暇 🚲 (1) 東京 〜 那須

8/11(土) 那須への移動日 (ほとんど電車移動)

f:id:hiboma:20180820173528p:plain

f:id:hiboma:20180820173520p:plain

夏休みのステータスと計画

  • 前日まで福岡へ出張していた
  • 出張前からきつい風邪をひいていて、睡眠時の咳がひどく十分に眠れていなかった

... というコンディション不調もあり 例年のように 長距離で走り回る準備が出来なかったので、輪行で帰省しながらポチポチ気楽に走る計画にした

更に今年のお盆期間は熱気と昼頃の雷雨がひどく、天候に恵まれなかったのも不運だった

続きを読む

【続 Vol.4】CentOS7.5 の perf probe / perf record のバグと思われる挙動を調べ中 - 3.10.0-862.11.6.el7 で修正された

hiboma.hatenadiary.jp

上記のバグを http://bugs.centos.org にレポートしてましたが、3.10.0-862.11.6.el7 で修正されたとメンテナさんよりフィードバックをいただき、自分の手元でも検証してみて確かに修正されていることを確認しました

わーい

解決された issue のリンク

0014961: perf probe / perf record cause segmentation fault - CentOS Bug Tracker

Changelog を調べる

どうやって直ったのかが気になるので kernel-3.10.0-862.9.1.el73.10.0-862.11.6.el7 の diff をみてみますが ... うーん どの変更だろう

ソースの diff も眺めましたが、パっとみでは分からない

[vagrant@localhost ~]$ diff -u kernel.spec-kernel-3.10.0-862.9.1.el7  kernel.spec-kernel-3.10.0-862.11.6.el7 
--- kernel.spec-kernel-3.10.0-862.9.1.el7 2018-08-20 07:14:57.094491902 +0000
+++ kernel.spec-kernel-3.10.0-862.11.6.el7    2018-08-20 07:15:52.087710156 +0000
@@ -14,10 +14,10 @@
 %global distro_build 862
 
 %define rpmversion 3.10.0
-%define pkgrelease 862.9.1.el7
+%define pkgrelease 862.11.6.el7
 
 # allow pkg_release to have configurable %%{?dist} tag
-%define specrelease 862.9.1%{?dist}
+%define specrelease 862.11.6%{?dist}
 
 %define pkg_release %{specrelease}%{?buildid}
 
@@ -1698,9 +1698,197 @@
 %kernel_variant_files %{with_kdump} kdump
 
 %changelog
-* Mon Jul 16 2018 CentOS Sources <bugs@centos.org> - 3.10.0-862.9.1.el7
+* Tue Aug 14 2018 CentOS Sources <bugs@centos.org> - 3.10.0-862.11.6.el7
 - Apply debranding changes
 
+* Fri Aug 10 2018 Jan Stancek <jstancek@redhat.com> [3.10.0-862.11.6.el7]
+- [kernel] cpu/hotplug: Fix 'online' sysfs entry with 'nosmt' (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+
+* Thu Aug 09 2018 Frantisek Hrbata <fhrbata@hrbata.com> [3.10.0-862.11.5.el7]
+- [kernel] cpu/hotplug: Enable 'nosmt' as late as possible (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+
+* Tue Aug 07 2018 Jan Stancek <jstancek@redhat.com> [3.10.0-862.11.4.el7]
+- [net] ipv6: fix nospec-related regression in ipv6_addr_prefix() (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3693}
+
+* Mon Aug 06 2018 Jan Stancek <jstancek@redhat.com> [3.10.0-862.11.3.el7]
+- [net] tcp: add tcp_ooo_try_coalesce() helper (Paolo Abeni) [1611368 1611369] {CVE-2018-5390}
+- [net] tcp: call tcp_drop() from tcp_data_queue_ofo() (Paolo Abeni) [1611368 1611369] {CVE-2018-5390}
+- [net] tcp: detect malicious patterns in tcp_collapse_ofo_queue() (Paolo Abeni) [1611368 1611369] {CVE-2018-5390}
+- [net] tcp: avoid collapses in tcp_prune_queue() if possible (Paolo Abeni) [1611368 1611369] {CVE-2018-5390}
+- [net] tcp: free batches of packets in tcp_prune_ofo_queue() (Paolo Abeni) [1611368 1611369] {CVE-2018-5390}
+- [net] net: add rb_to_skb() and other rb tree helpers (Paolo Abeni) [1611368 1611369] {CVE-2018-5390}
+- [net] tcp: fix a stale ooo_last_skb after a replace (Paolo Abeni) [1611368 1611369] {CVE-2018-5390}
+- [net] tcp: use an RB tree for ooo receive queue (Paolo Abeni) [1611368 1611369] {CVE-2018-5390}
+- [net] tcp: refine tcp_prune_ofo_queue() to not drop all packets (Paolo Abeni) [1611368 1611369] {CVE-2018-5390}
+- [net] tcp: increment sk_drops for dropped rx packets (Paolo Abeni) [1611368 1611369] {CVE-2018-5390}
+- [x86] x86/syscall: Fix regression when using the last syscall (pkey_free) (Lauro Ramos Venancio) [1589033 1589035] {CVE-2018-3693}
+
+* Thu Jul 26 2018 Rado Vrbovsky <rvrbovsk@redhat.com> [3.10.0-862.11.2.el7]
+- [kernel] cpu: hotplug: detect SMT disabled by BIOS (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [documentation] l1tf: Fix typos (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] kvm: Remove extra newline in vmentry_l1d_flush sysfs file (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] kvm: vmx: Initialize the vmx_l1d_flush_pages' content (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] speculation: l1tf: Unbreak !__HAVE_ARCH_PFN_MODIFY_ALLOWED architectures (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [documentation] Add section about CPU vulnerabilities (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] bugs, kvm: introduce boot-time control of L1TF mitigations (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [kernel] cpu: hotplug: Set CPU_SMT_NOT_SUPPORTED early (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [kernel] cpu: hotplug: Expose SMT control init function (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] kvm: Allow runtime control of L1D flush (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] kvm: Serialize L1D flush parameter setter (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] kvm: Add static key for flush always (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] kvm: Move l1tf setup function (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] l1tf: Handle EPT disabled state proper (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] kvm: Drop L1TF MSR list approach (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] litf: Introduce vmx status variable (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] bugs: Make cpu_show_common() static (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] bugs: Concentrate bug reporting into a separate function (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [kernel] cpu: hotplug: Online siblings when SMT control is turned on (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] kvm: vmx: Use MSR save list for IA32_FLUSH_CMD if required (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] kvm: vmx: Extend add_atomic_switch_msr() to allow VMENTER only MSRs (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] kvm: vmx: Separate the VMX AUTOLOAD guest/host number accounting (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] kvm: vmx: Add find_msr() helper function (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] kvm: vmx: Split the VMX MSR LOAD structures to have an host/guest numbers (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] kvm: mitigation for L1 cache terminal fault vulnerabilities, part 3 (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] kvm: Warn user if KVM is loaded SMT and L1TF CPU bug being present (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [kernel] cpu: hotplug: Boot HT siblings at least once, part 2 (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] speculation/l1tf: fix typo in l1tf mitigation string (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] l1tf: protect _PAGE_FILE PTEs against speculation (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] kvm: mitigation for L1 cache terminal fault vulnerabilities, part 2 (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [kernel] cpu/hotplug: Boot HT siblings at least once (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- Revert "x86/apic: Ignore secondary threads if nosmt=force" (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] speculation/l1tf: Fix up pte->pfn conversion for PAE (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] speculation/l1tf: Protect PAE swap entries against L1TF (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] CPU/AMD: Move TOPOEXT reenablement before reading smp_num_siblings (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] speculation/l1tf: Extend 64bit swap file size limit (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] cpu/AMD: Remove the pointless detect_ht() call (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] bugs: Move the l1tf function and define pr_fmt properly (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [kernel] cpu/hotplug: Provide knobs to control SMT, part 2 (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] topology: Provide topology_smt_supported() (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] smp: Provide topology_is_primary_thread(), part 2 (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] apic: Ignore secondary threads if nosmt=force (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] cpu/AMD: Evaluate smp_num_siblings early (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] CPU/AMD: Do not check CPUID max ext level before parsing SMP info (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] cpu/intel: Evaluate smp_num_siblings early (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] cpu/topology: Provide detect_extended_topology_early() (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] cpu/common: Provide detect_ht_early() (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] cpu: Remove the pointless CPU printout (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [kernel] cpu/hotplug: Provide knobs to control SMT (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [kernel] cpu/hotplug: Split do_cpu_down() (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] smp: Provide topology_is_primary_thread() (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] CPU: Modify detect_extended_topology() to return result (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] l1tf: fix build for CONFIG_NUMA_BALANCING=n (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] l1tf: sync with latest L1TF patches (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] l1tf: protect _PAGE_NUMA PTEs and PMDs against speculation (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [mm] l1tf: Disallow non privileged high MMIO PROT_NONE mappings (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] l1tf: Report if too much memory for L1TF workaround (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] l1tf: Limit swap file size to MAX_PA/2 (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] l1tf: Add sysfs reporting for l1tf (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] l1tf: Make sure the first page is always reserved (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] l1tf: Protect PROT_NONE PTEs against speculation (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] l1tf: Protect swap entries against L1TF (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] l1tf: Increase 32bit PAE __PHYSICAL_PAGE_MASK (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] mm: Fix swap entry comment and macro (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] spec_ctrl: sync with upstream cpu_set_bug_bits() (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86]  add support for L1D flush MSR (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+- [x86] kvm: mitigation for L1 cache terminal fault vulnerabilities (Josh Poimboeuf) [1593383 1593384] {CVE-2018-3620}
+
+* Fri Jul 20 2018 Rado Vrbovsky <rvrbovsk@redhat.com> [3.10.0-862.11.1.el7]
+- [tcmu] allow userspace to reset ring (Xiubo Li) [1599669 1562587]
+- [tcmu] remove commands_lock (Xiubo Li) [1599669 1562587]
+- [tcmu] move expired command completion to unmap thread (Xiubo Li) [1599669 1562587]
+- [tcmu] add cmd timeout handling wq (Xiubo Li) [1599669 1562587]
+- [tcmu] don't block submitting context for block waits (Xiubo Li) [1599669 1562587]
+- [tcmu] fix double se_cmd completion (Xiubo Li) [1599669 1562587]
+- [tcmu] replace spin lock with mutex (Xiubo Li) [1599669 1562587]
+- [target] add SAM_STAT_BUSY sense reason (Xiubo Li) [1599669 1562587]
+- [target] core: add device action configfs files (Xiubo Li) [1599669 1562587]
+- [target] Avoid mappedlun symlink creation during lun shutdown (Xiubo Li) [1599656 1585081]
+- [spectre] update Spectre v1 mitigation string (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [spectre] fix hiddev nospec issues (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [x86] syscall: clarify clobbered registers in entry code (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [powerpc] add missing barrier_nospec() in __get_user64_nocheck() (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [spectre] fix gadgets found by smatch scanner (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [alsa] rme9652: Hardening for potential Spectre v1 (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [alsa] hdspm: Hardening for potential Spectre v1 (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [alsa] asihpi: Hardening for potential Spectre v1 (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [alsa] opl3: Hardening for potential Spectre v1 (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [alsa] hda: Hardening for potential Spectre v1 (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [alsa] seq: oss: Hardening for potential Spectre v1 (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [alsa] seq: oss: Fix unbalanced use lock for synth MIDI device (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [net] atm: Fix potential Spectre v1 (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [kernel] time: Protect posix clock array access against speculation (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [kernel] sys.c: fix potential Spectre v1 issue (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [sched] autogroup: Fix possible Spectre-v1 indexing for sched_prio_to_weight[] (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [perf] core: Fix possible Spectre-v1 indexing for ->aux_pages[] (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [sysvipc] sem: mitigate semnum index against spectre v1 (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [alsa] control: Hardening for potential Spectre v1 (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [usbip] vhci_sysfs: fix potential Spectre v1 (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [media] dvb_ca_en50221: prevent using slot_info for Spectre attacs (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [media] dvb_ca_en50221: sanity check slot number from userspace (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [atm] zatm: Fix potential Spectre v1 (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [x86] kvm: Update spectre-v1 mitigation (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [x86] kvm: Add memory barrier on vmcs field lookup (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [x86] perf/msr: Fix possible Spectre-v1 indexing in the MSR driver (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [x86] perf: Fix possible Spectre-v1 indexing for x86_pmu::event_map() (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [x86] perf: Fix possible Spectre-v1 indexing for hw_perf_event cache_* (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [net] nl80211: Sanitize array index in parse_txq_params (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [include] vfs, fdtable: Prevent bounds-check bypass via speculative execution (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [x86] syscall: Sanitize syscall table de-references under speculation (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [powerpc] Use barrier_nospec in copy_from_user() (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [include] nospec: Introduce barrier_nospec for other arches (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [x86] Introduce barrier_nospec (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [x86] spectre_v1: Disable compiler optimizations over array_index_mask_nospec() (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [x86] Implement array_index_mask_nospec (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [documentation] Document array_index_nospec (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [include] nospec: Include <asm/barrier.h> dependency (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [include] nospec: Allow index argument to have const-qualified type (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [include] nospec: Kill array_index_nospec_mask_check() (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [include] nospec: Move array_index_nospec() parameter checking into separate macro (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [include] array_index_nospec: Sanitize speculative array de-references (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [x86] get_user: Use pointer masking to limit speculation (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [x86] uaccess: Use __uaccess_begin_nospec() and uaccess_try_nospec (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [x86] Introduce __uaccess_begin_nospec() and uaccess_try_nospec (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [x86] usercopy: Replace open coded stac/clac with __uaccess_{begin, end} (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [x86] reorganize SMAP handling in user space accesses (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [x86] uaccess: Tell the compiler that uaccess is unlikely to fault (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+- [x86] uaccess: fix sparse errors (Josh Poimboeuf) [1589033 1589035] {CVE-2018-3690}
+
+* Wed Jul 04 2018 Rado Vrbovsky <rvrbovsk@redhat.com> [3.10.0-862.10.1.el7]
+- [x86] add _TIF_UPROBE to _TIF_DO_NOTIFY_MASK (Oleg Nesterov) [1595155 1579521]
+- [x86] spec_ctrl: Always clear SPEC_CTRL MSRs when disabling IBRS (Radomir Vrbovsky) [1586150 1574730]
+- [sound] alsa: hda/realtek - Add headset mode support for Dell laptop (Jaroslav Kysela) [1588946 1528587]
+- [sound] alsa: hda/realtek - Support headset mode for ALC215/ALC285/ALC289 (Jaroslav Kysela) [1593586 1535427]
+- [mm] compaction: release zone irqlock in isolate_freepages_block (Andrea Arcangeli) [1596283 1582793]
+- [mm] compaction: change the timing to check to drop the spinlock (Andrea Arcangeli) [1596283 1582793]
+- [fs] dcache.c: add cond_resched() in shrink_dentry_list() (Aaron Tomlin) [1596184 1584693]
+- [misc] vmware balloon: Treat init like reset (Cathy Avery) [1595601 1540110]
+- [netdrv] qede: Fix ref-cnt usage count (Chad Dupuis) [1594700 1574847]
+- [x86] kvm: fix LAPIC timer drift when guest uses periodic mode ("Dr. David Alan Gilbert") [1594292 1584775]
+- [x86] kvm: remove APIC Timer periodic/oneshot spikes ("Dr. David Alan Gilbert") [1594292 1584775]
+- [netdrv] mlx4_en: Increase number of default RX rings (Erez Alfasi) [1594127 1520295]
+- [netdrv] mlx4_en: Limit the number of RX rings (Erez Alfasi) [1594127 1520295]
+- [netdrv] mlx4_en: Limit the number of TX rings (Erez Alfasi) [1594127 1520295]
+- [fs] ceph: don't set read_ahead_kb to 0 by default (Ilya Dryomov) [1590825 1579539]
+- [scsi] qla2xxx: Remove stale debug value for login_retry flag (Himanshu Madhani) [1588937 1578880]
+- [x86] topology: Update the 'cpu cores' field in /proc/cpuinfo correctly across CPU hotplug operations (Prarit Bhargava) [1588563 1582023]
+- [acpi] osi: Add OEM _OSI strings to disable NVidia RTD3 (Jaroslav Kysela) [1584685 1581391]
+- [hv] vmbus: Fix a rescind issue (Eduardo Otubo) [1582124 1518498]
+- [linux] libata: enable host-wide tags (Ewan Milne) [1581728 1491014]
+- [ata] libata: remove ATA_FLAG_LOWTAG (Ewan Milne) [1581728 1491014]
+- [ata] Add a new flag to destinguish sas controller (Ewan Milne) [1581728 1491014]
+- [ata] libata: make sata_sil24 use fifo tag allocator (Ewan Milne) [1581728 1491014]
+- [ata] libata: move sas ata tag allocation to libata-scsi.c (Ewan Milne) [1581728 1491014]
+- [ata] libata: use blk taging (Ewan Milne) [1581728 1491014]
+- [nvme] rdma: Use mr pool (David Milburn) [1581347 1547273]
+- [nvme] rdma: Check remotely invalidated rkey matches our expected rkey (David Milburn) [1581347 1547273]
+- [nvme] rdma: wait for local invalidation before completing a request (David Milburn) [1581347 1547273]
+- [nvme] rdma: don't complete requests before a send work request has completed (David Milburn) [1581347 1547273]
+- [nvme] rdma: don't suppress send completions (David Milburn) [1581347 1547273]
+- [x86] kvm: Fix loss of pending INIT due to race (Radim Krcmar) [1580467 1569473]
+- [mm] mempolicy: fix use after free when calling get_mempolicy (Augusto Caringi) [1576759 1576755] {CVE-2018-10675}
+- [sound] alsa: seq: Fix racy pool initializations (Jaroslav Kysela) [1550171 1593586 1550169 1535427] {CVE-2018-7566}
+- [crypto] algif_skcipher: Load TX SG list after waiting (Bruno Eduardo de Oliveira Meneguele) [1541870 1541875] {CVE-2017-13215}
+
 * Wed Jun 27 2018 Frantisek Hrbata <fhrbata@hrbata.com> [3.10.0-862.9.1.el7]
 - [iscsi-target] Fix iscsi_np reset hung task during parallel delete (Maurizio Lombardi) [1583593 1579217]

感想

  • 自分の出したレポートが Bug として Ack されて、(修正に関しては何もしてないけど) メンテナさんにトラッキングしてもらって、 resolved に至ったのは嬉しい.
  • bugs.centos.org の issue が扱われるフローも理解できた

飯能〜秩父 🚲

7/22(日) 酷暑のサイクリング

f:id:hiboma:20180723235035p:plain

飯能から秩父に出て、少しだけ散歩して、60km 獲得標高 737m 走って終わり。峠もちょっとだけ涼しかくはあったけど、どこに行っても暑さから逃れられない 🔥

続きを読む

【続 Vol.3】CentOS7.5 の fsnotify がレースコンディションを起こすバグ : kernel-3.10.0-862.9.1.el7 で fix された

CentOS の 3.10.0-862.9.1.el7 がリリースされています

しばらく前から fsnotify() がレースコンディンションを起こすバグをしばらくトラッキングしていましたが、このリリースで fix されました

hiboma.hatenadiary.jp

kernel-plus パッケージを使うことで問題を回避できましたが、今回のリリースで kernel パッケージでも大丈夫となりました。nginx + td_agent + in_tail プラグインな構成を安心して動かせますね

changelog の確認

下記が該当のログだと思われます

* Wed Jun 06 2018 Rado Vrbovsky <rvrbovsk@redhat.com> [3.10.0-862.7.1.el7]
- [linux] fsnotify: Fix fsnotify_mark_connector race (Miklos Szeredi) [1584684 1569921]

再現スクリプトを実行して確認

hiboma.hatenadiary.jp

changelog を信頼してない訳ではないですが、自分でも確かめました。上記エントリにも載せた再現スクリプトを実行してみて再現しませんでした。

大丈夫そうですね 。やったー

CentOS の issue

0014823: 3.10.0-862.2.3.el7.x86_64 kernel panic and crash under Xen PV with NMI watchdog: BUG: soft lockup - CPU#2 - CentOS Bug Tracker のステータスが resolved となりました

【続 Vol.2】CentOS7.5 の fsnotify がレースコンディションを起こすバグ : kernel-3.10.0-862.6.3.el7.x86_64 が出たけど直らず

hiboma.hatenadiary.jp

  • CentOS7 の kernel-3.10.0-862.6.3.el7 がリリースされていますが、上記エントリで触れた fsnotiry() のバグはまだ直っていません
  • CentOS Plus リポジトリの kernel-plus-3.10.0-862.6.3.el7 で修正パッチがあたっています
  • 弊社 GMOペパボでは、バグを踏みうる構成の場合 kernel-plus を入れるアップデートを促しています

以降の記述はバグの再現をとったり、パッケージの差分をメモした内容です。詳細に興味がなければスキップしてください

続きを読む

【続 Vol.3】CentOS7.5 の perf probe / perf record のバグと思われる挙動を調べ中 - ビルドしての検証

hiboma.hatenadiary.jp

これの続きを調べていた

SPRM からソースを展開して、問題のあるカーネルとそうでないカーネルとの diff を見ながら、関係がありそうな変更を削ったり/足したりしながら手元でビルドして試したころ、下記の変更によって起きる問題だと絞り込めた

diff -ru /home/vagrant/rpmbuild/BUILD/kernel-3.10.0-862.el7/linux-3.10.0-862.el7.centos.x86_64/arch/x86/kernel/entry_64.S /home/vagrant/rpmbuild/BUILD/kernel-3.10.0-862.2.3.el7/linux-3.10.0-862.2.3.el7.x8
6_64/arch/x86/kernel/entry_64.S
--- /home/vagrant/rpmbuild/BUILD/kernel-3.10.0-862.el7/linux-3.10.0-862.el7.centos.x86_64/arch/x86/kernel/entry_64.S    2018-03-21 21:40:12.000000000 +0000
+++ /home/vagrant/rpmbuild/BUILD/kernel-3.10.0-862.2.3.el7/linux-3.10.0-862.2.3.el7.x86_64/arch/x86/kernel/entry_64.S   2018-04-30 14:05:40.000000000 +0000
@@ -1400,7 +1400,7 @@
        .pushsection .kprobes.text, "ax"
 
 paranoidzeroentry_ist debug do_debug DEBUG_STACK
-paranoidzeroentry_ist int3 do_int3 DEBUG_STACK
+zeroentry int3 do_int3
 errorentry stack_segment do_stack_segment
 #ifdef CONFIG_XEN
 zeroentry xen_debug do_debug

上記の変更を取り除くと、SIGSEGV は治まった.

該当のコミットを %changelog で調べる

https://git.centos.org/summary/rpms!kernel.git を git clone して imports/c7/kernel-3.10.0-862.2.3.el ブランチの SPECS/kernel.spec を見て見るに下記の変更っぽい

%changelog
* Mon Apr 30 2018 Rado Vrbovsky <rvrbovsk@redhat.com> [3.10.0-862.2.3.el7]
- [x86] kvm: fix icebp instruction handling (Paolo Bonzini) [1566849 1566845] {CVE-2018-1087}
- [x86] entry/64: Don't use IST entry for #BP stack (Paolo Bonzini) [1567084 1567083] {CVE-2018-8897} 👈

(CentOS で spec ファイルの %changelog と diff を付き合わせるよい方法がわからない)

upstream のコミットを調べる

もともと upstrem には下記のコミットでマージされたようだ.

github.com

自分が見ていたコードとはだいぶ違う. バックポートの際に変更が加わっているのだろう

どういう意図の変更なのか

CVE-2018-8897 の fix である

コードを追って見たものの、どうやって不具合に至るのかという詳細まではよく分からない 🙃

その他

/sys/kernel/debug/tracing がぶっこわれているということで、 似たような問題が下記で議論されたり パッチが revert されていた


bugs.centos.org にどうやってレポートするといいか考えている