Browse Source

fix #1622: i40e memory leak

cherry-pick from upstream 4.14
Fabian Grünbichler 7 years ago
parent
commit
a0f7ab8a6a
100 changed files with 127 additions and 0 deletions
  1. 127 0
      patches/kernel/0017-i40e-Fix-memory-leak-related-filter-programming-stat.patch
  2. 0 0
      patches/kernel/0018-x86-mm-Add-the-nopcid-boot-option-to-turn-off-PCID.patch
  3. 0 0
      patches/kernel/0019-x86-mm-Enable-CR4.PCIDE-on-supported-systems.patch
  4. 0 0
      patches/kernel/0020-x86-mm-Document-how-CR4.PCIDE-restore-works.patch
  5. 0 0
      patches/kernel/0021-x86-entry-64-Refactor-IRQ-stacks-and-make-them-NMI-s.patch
  6. 0 0
      patches/kernel/0022-x86-entry-64-Initialize-the-top-of-the-IRQ-stack-bef.patch
  7. 0 0
      patches/kernel/0023-x86-entry-64-Add-unwind-hint-annotations.patch
  8. 0 0
      patches/kernel/0024-xen-x86-Remove-SME-feature-in-PV-guests.patch
  9. 0 0
      patches/kernel/0025-x86-xen-64-Rearrange-the-SYSCALL-entries.patch
  10. 0 0
      patches/kernel/0026-irq-Make-the-irqentry-text-section-unconditional.patch
  11. 0 0
      patches/kernel/0027-x86-xen-64-Fix-the-reported-SS-and-CS-in-SYSCALL.patch
  12. 0 0
      patches/kernel/0028-x86-paravirt-xen-Remove-xen_patch.patch
  13. 0 0
      patches/kernel/0029-x86-traps-Simplify-pagefault-tracing-logic.patch
  14. 0 0
      patches/kernel/0030-x86-idt-Unify-gate_struct-handling-for-32-64-bit-ker.patch
  15. 0 0
      patches/kernel/0031-x86-asm-Replace-access-to-desc_struct-a-b-fields.patch
  16. 0 0
      patches/kernel/0032-x86-xen-Get-rid-of-paravirt-op-adjust_exception_fram.patch
  17. 0 0
      patches/kernel/0033-x86-paravirt-Remove-no-longer-used-paravirt-function.patch
  18. 0 0
      patches/kernel/0034-x86-entry-Fix-idtentry-unwind-hint.patch
  19. 0 0
      patches/kernel/0035-x86-mm-64-Initialize-CR4.PCIDE-early.patch
  20. 0 0
      patches/kernel/0036-objtool-Add-ORC-unwind-table-generation.patch
  21. 0 0
      patches/kernel/0037-objtool-x86-Add-facility-for-asm-code-to-provide-unw.patch
  22. 0 0
      patches/kernel/0038-x86-unwind-Add-the-ORC-unwinder.patch
  23. 0 0
      patches/kernel/0039-x86-kconfig-Consolidate-unwinders-into-multiple-choi.patch
  24. 0 0
      patches/kernel/0040-objtool-Upgrade-libelf-devel-warning-to-error-for-CO.patch
  25. 0 0
      patches/kernel/0041-x86-ldt-64-Refresh-DS-and-ES-when-modify_ldt-changes.patch
  26. 0 0
      patches/kernel/0042-x86-mm-Give-each-mm-TLB-flush-generation-a-unique-ID.patch
  27. 0 0
      patches/kernel/0043-x86-mm-Track-the-TLB-s-tlb_gen-and-update-the-flushi.patch
  28. 0 0
      patches/kernel/0044-x86-mm-Rework-lazy-TLB-mode-and-TLB-freshness-tracki.patch
  29. 0 0
      patches/kernel/0045-x86-mm-Implement-PCID-based-optimization-try-to-pres.patch
  30. 0 0
      patches/kernel/0046-x86-mm-Factor-out-CR3-building-code.patch
  31. 0 0
      patches/kernel/0047-x86-mm-64-Stop-using-CR3.PCID-0-in-ASID-aware-code.patch
  32. 0 0
      patches/kernel/0048-x86-mm-Flush-more-aggressively-in-lazy-TLB-mode.patch
  33. 0 0
      patches/kernel/0049-Revert-x86-mm-Stop-calling-leave_mm-in-idle-code.patch
  34. 0 0
      patches/kernel/0050-kprobes-x86-Set-up-frame-pointer-in-kprobe-trampolin.patch
  35. 0 0
      patches/kernel/0051-x86-tracing-Introduce-a-static-key-for-exception-tra.patch
  36. 0 0
      patches/kernel/0052-x86-boot-Add-early-cmdline-parsing-for-options-with-.patch
  37. 0 0
      patches/kernel/0053-mm-x86-mm-Fix-performance-regression-in-get_user_pag.patch
  38. 0 0
      patches/kernel/0054-x86-asm-Remove-unnecessary-n-t-in-front-of-CC_SET-fr.patch
  39. 0 0
      patches/kernel/0055-objtool-Don-t-report-end-of-section-error-after-an-e.patch
  40. 0 0
      patches/kernel/0056-x86-head-Remove-confusing-comment.patch
  41. 0 0
      patches/kernel/0057-x86-head-Remove-unused-bad_address-code.patch
  42. 0 0
      patches/kernel/0058-x86-head-Fix-head-ELF-function-annotations.patch
  43. 0 0
      patches/kernel/0059-x86-boot-Annotate-verify_cpu-as-a-callable-function.patch
  44. 0 0
      patches/kernel/0060-x86-xen-Fix-xen-head-ELF-annotations.patch
  45. 0 0
      patches/kernel/0061-x86-xen-Add-unwind-hint-annotations.patch
  46. 0 0
      patches/kernel/0062-x86-head-Add-unwind-hint-annotations.patch
  47. 0 0
      patches/kernel/0063-ACPI-APEI-adjust-a-local-variable-type-in-ghes_iorem.patch
  48. 0 0
      patches/kernel/0064-x86-unwinder-Make-CONFIG_UNWINDER_ORC-y-the-default-.patch
  49. 0 0
      patches/kernel/0065-x86-fpu-debug-Remove-unused-x86_fpu_state-and-x86_fp.patch
  50. 0 0
      patches/kernel/0066-x86-unwind-Rename-unwinder-config-options-to-CONFIG_.patch
  51. 0 0
      patches/kernel/0067-x86-unwind-Make-CONFIG_UNWINDER_ORC-y-the-default-in.patch
  52. 0 0
      patches/kernel/0068-bitops-Add-clear-set_bit32-to-linux-bitops.h.patch
  53. 0 0
      patches/kernel/0069-x86-cpuid-Add-generic-table-for-CPUID-dependencies.patch
  54. 0 0
      patches/kernel/0070-x86-fpu-Parse-clearcpuid-as-early-XSAVE-argument.patch
  55. 0 0
      patches/kernel/0071-x86-fpu-Make-XSAVE-check-the-base-CPUID-features-bef.patch
  56. 0 0
      patches/kernel/0072-x86-fpu-Remove-the-explicit-clearing-of-XSAVE-depend.patch
  57. 0 0
      patches/kernel/0073-x86-platform-UV-Convert-timers-to-use-timer_setup.patch
  58. 0 0
      patches/kernel/0074-objtool-Print-top-level-commands-on-incorrect-usage.patch
  59. 0 0
      patches/kernel/0075-x86-cpuid-Prevent-out-of-bound-access-in-do_clear_cp.patch
  60. 0 0
      patches/kernel/0076-x86-entry-Use-SYSCALL_DEFINE-macros-for-sys_modify_l.patch
  61. 0 0
      patches/kernel/0077-mm-sparsemem-Allocate-mem_section-at-runtime-for-CON.patch
  62. 0 0
      patches/kernel/0078-x86-kasan-Use-the-same-shadow-offset-for-4-and-5-lev.patch
  63. 0 0
      patches/kernel/0079-x86-xen-Provide-pre-built-page-tables-only-for-CONFI.patch
  64. 0 0
      patches/kernel/0080-x86-xen-Drop-5-level-paging-support-code-from-the-XE.patch
  65. 0 0
      patches/kernel/0081-ACPI-APEI-remove-the-unused-dead-code-for-SEA-NMI-no.patch
  66. 0 0
      patches/kernel/0082-x86-asm-Don-t-use-the-confusing-.ifeq-directive.patch
  67. 0 0
      patches/kernel/0083-x86-build-Beautify-build-log-of-syscall-headers.patch
  68. 0 0
      patches/kernel/0084-x86-mm-64-Rename-the-register_page_bootmem_memmap-si.patch
  69. 0 0
      patches/kernel/0085-x86-cpufeatures-Enable-new-SSE-AVX-AVX512-CPU-featur.patch
  70. 0 0
      patches/kernel/0086-x86-mm-Relocate-page-fault-error-codes-to-traps.h.patch
  71. 0 0
      patches/kernel/0087-x86-boot-Relocate-definition-of-the-initial-state-of.patch
  72. 0 0
      patches/kernel/0088-ptrace-x86-Make-user_64bit_mode-available-to-32-bit-.patch
  73. 0 0
      patches/kernel/0089-x86-entry-64-Remove-the-restore_c_regs_and_iret-labe.patch
  74. 0 0
      patches/kernel/0090-x86-entry-64-Split-the-IRET-to-user-and-IRET-to-kern.patch
  75. 0 0
      patches/kernel/0091-x86-entry-64-Move-SWAPGS-into-the-common-IRET-to-use.patch
  76. 0 0
      patches/kernel/0092-x86-entry-64-Simplify-reg-restore-code-in-the-standa.patch
  77. 0 0
      patches/kernel/0093-x86-entry-64-Shrink-paranoid_exit_restore-and-make-l.patch
  78. 0 0
      patches/kernel/0094-x86-entry-64-Use-pop-instead-of-movq-in-syscall_retu.patch
  79. 0 0
      patches/kernel/0095-x86-entry-64-Merge-the-fast-and-slow-SYSRET-paths.patch
  80. 0 0
      patches/kernel/0096-x86-entry-64-Use-POP-instead-of-MOV-to-restore-regs-.patch
  81. 0 0
      patches/kernel/0097-x86-entry-64-Remove-the-RESTORE_._REGS-infrastructur.patch
  82. 0 0
      patches/kernel/0098-xen-x86-entry-64-Add-xen-NMI-trap-entry.patch
  83. 0 0
      patches/kernel/0099-x86-entry-64-De-Xen-ify-our-NMI-code.patch
  84. 0 0
      patches/kernel/0100-x86-entry-32-Pull-the-MSR_IA32_SYSENTER_CS-update-co.patch
  85. 0 0
      patches/kernel/0101-x86-entry-64-Pass-SP0-directly-to-load_sp0.patch
  86. 0 0
      patches/kernel/0102-x86-entry-Add-task_top_of_stack-to-find-the-top-of-a.patch
  87. 0 0
      patches/kernel/0103-x86-xen-64-x86-entry-64-Clean-up-SP-code-in-cpu_init.patch
  88. 0 0
      patches/kernel/0104-x86-entry-64-Stop-initializing-TSS.sp0-at-boot.patch
  89. 0 0
      patches/kernel/0105-x86-entry-64-Remove-all-remaining-direct-thread_stru.patch
  90. 0 0
      patches/kernel/0106-x86-entry-32-Fix-cpu_current_top_of_stack-initializa.patch
  91. 0 0
      patches/kernel/0107-x86-entry-64-Remove-thread_struct-sp0.patch
  92. 0 0
      patches/kernel/0108-x86-traps-Use-a-new-on_thread_stack-helper-to-clean-.patch
  93. 0 0
      patches/kernel/0109-x86-entry-64-Shorten-TEST-instructions.patch
  94. 0 0
      patches/kernel/0110-x86-cpuid-Replace-set-clear_bit32.patch
  95. 0 0
      patches/kernel/0111-bitops-Revert-cbe96375025e-bitops-Add-clear-set_bit3.patch
  96. 0 0
      patches/kernel/0112-x86-mm-Define-_PAGE_TABLE-using-_KERNPG_TABLE.patch
  97. 0 0
      patches/kernel/0113-x86-cpufeatures-Re-tabulate-the-X86_FEATURE-definiti.patch
  98. 0 0
      patches/kernel/0114-x86-cpufeatures-Fix-various-details-in-the-feature-d.patch
  99. 0 0
      patches/kernel/0115-selftests-x86-protection_keys-Fix-syscall-NR-redefin.patch
  100. 0 0
      patches/kernel/0116-selftests-x86-ldt_gdt-Robustify-against-set_thread_a.patch

+ 127 - 0
patches/kernel/0017-i40e-Fix-memory-leak-related-filter-programming-stat.patch

@@ -0,0 +1,127 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Alexander Duyck <[email protected]>
+Date: Wed, 4 Oct 2017 08:44:43 -0700
+Subject: [PATCH] i40e: Fix memory leak related filter programming status
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+It looks like we weren't correctly placing the pages from buffers that had
+been used to return a filter programming status back on the ring. As a
+result they were being overwritten and tracking of the pages was lost.
+
+This change works to correct that by incorporating part of
+i40e_put_rx_buffer into the programming status handler code. As a result we
+should now be correctly placing the pages for those buffers on the
+re-allocation list instead of letting them stay in place.
+
+Fixes: 0e626ff7ccbf ("i40e: Fix support for flow director programming status")
+Reported-by: Anders K. Pedersen <[email protected]>
+Signed-off-by: Alexander Duyck <[email protected]>
+Tested-by: Anders K Pedersen <[email protected]>
+Signed-off-by: Jeff Kirsher <[email protected]>
+(cherry picked from commit 2b9478ffc550f17c6cd8c69057234e91150f5972)
+Signed-off-by: Fabian Grünbichler <[email protected]>
+---
+ drivers/net/ethernet/intel/i40e/i40e_txrx.c | 63 ++++++++++++++++-------------
+ 1 file changed, 36 insertions(+), 27 deletions(-)
+
+diff --git a/drivers/net/ethernet/intel/i40e/i40e_txrx.c b/drivers/net/ethernet/intel/i40e/i40e_txrx.c
+index 2194960d5855..391b1878c24b 100644
+--- a/drivers/net/ethernet/intel/i40e/i40e_txrx.c
++++ b/drivers/net/ethernet/intel/i40e/i40e_txrx.c
+@@ -1042,6 +1042,32 @@ static bool i40e_set_new_dynamic_itr(struct i40e_ring_container *rc)
+ 	return false;
+ }
+ 
++/**
++ * i40e_reuse_rx_page - page flip buffer and store it back on the ring
++ * @rx_ring: rx descriptor ring to store buffers on
++ * @old_buff: donor buffer to have page reused
++ *
++ * Synchronizes page for reuse by the adapter
++ **/
++static void i40e_reuse_rx_page(struct i40e_ring *rx_ring,
++			       struct i40e_rx_buffer *old_buff)
++{
++	struct i40e_rx_buffer *new_buff;
++	u16 nta = rx_ring->next_to_alloc;
++
++	new_buff = &rx_ring->rx_bi[nta];
++
++	/* update, and store next to alloc */
++	nta++;
++	rx_ring->next_to_alloc = (nta < rx_ring->count) ? nta : 0;
++
++	/* transfer page from old buffer to new buffer */
++	new_buff->dma		= old_buff->dma;
++	new_buff->page		= old_buff->page;
++	new_buff->page_offset	= old_buff->page_offset;
++	new_buff->pagecnt_bias	= old_buff->pagecnt_bias;
++}
++
+ /**
+  * i40e_rx_is_programming_status - check for programming status descriptor
+  * @qw: qword representing status_error_len in CPU ordering
+@@ -1076,15 +1102,24 @@ static void i40e_clean_programming_status(struct i40e_ring *rx_ring,
+ 					  union i40e_rx_desc *rx_desc,
+ 					  u64 qw)
+ {
+-	u32 ntc = rx_ring->next_to_clean + 1;
++	struct i40e_rx_buffer *rx_buffer;
++	u32 ntc = rx_ring->next_to_clean;
+ 	u8 id;
+ 
+ 	/* fetch, update, and store next to clean */
++	rx_buffer = &rx_ring->rx_bi[ntc++];
+ 	ntc = (ntc < rx_ring->count) ? ntc : 0;
+ 	rx_ring->next_to_clean = ntc;
+ 
+ 	prefetch(I40E_RX_DESC(rx_ring, ntc));
+ 
++	/* place unused page back on the ring */
++	i40e_reuse_rx_page(rx_ring, rx_buffer);
++	rx_ring->rx_stats.page_reuse_count++;
++
++	/* clear contents of buffer_info */
++	rx_buffer->page = NULL;
++
+ 	id = (qw & I40E_RX_PROG_STATUS_DESC_QW1_PROGID_MASK) >>
+ 		  I40E_RX_PROG_STATUS_DESC_QW1_PROGID_SHIFT;
+ 
+@@ -1643,32 +1678,6 @@ static bool i40e_cleanup_headers(struct i40e_ring *rx_ring, struct sk_buff *skb,
+ 	return false;
+ }
+ 
+-/**
+- * i40e_reuse_rx_page - page flip buffer and store it back on the ring
+- * @rx_ring: rx descriptor ring to store buffers on
+- * @old_buff: donor buffer to have page reused
+- *
+- * Synchronizes page for reuse by the adapter
+- **/
+-static void i40e_reuse_rx_page(struct i40e_ring *rx_ring,
+-			       struct i40e_rx_buffer *old_buff)
+-{
+-	struct i40e_rx_buffer *new_buff;
+-	u16 nta = rx_ring->next_to_alloc;
+-
+-	new_buff = &rx_ring->rx_bi[nta];
+-
+-	/* update, and store next to alloc */
+-	nta++;
+-	rx_ring->next_to_alloc = (nta < rx_ring->count) ? nta : 0;
+-
+-	/* transfer page from old buffer to new buffer */
+-	new_buff->dma		= old_buff->dma;
+-	new_buff->page		= old_buff->page;
+-	new_buff->page_offset	= old_buff->page_offset;
+-	new_buff->pagecnt_bias	= old_buff->pagecnt_bias;
+-}
+-
+ /**
+  * i40e_page_is_reusable - check if any reuse is possible
+  * @page: page struct to check
+-- 
+2.14.2
+

+ 0 - 0
patches/kernel/0017-x86-mm-Add-the-nopcid-boot-option-to-turn-off-PCID.patch → patches/kernel/0018-x86-mm-Add-the-nopcid-boot-option-to-turn-off-PCID.patch


+ 0 - 0
patches/kernel/0018-x86-mm-Enable-CR4.PCIDE-on-supported-systems.patch → patches/kernel/0019-x86-mm-Enable-CR4.PCIDE-on-supported-systems.patch


+ 0 - 0
patches/kernel/0019-x86-mm-Document-how-CR4.PCIDE-restore-works.patch → patches/kernel/0020-x86-mm-Document-how-CR4.PCIDE-restore-works.patch


+ 0 - 0
patches/kernel/0020-x86-entry-64-Refactor-IRQ-stacks-and-make-them-NMI-s.patch → patches/kernel/0021-x86-entry-64-Refactor-IRQ-stacks-and-make-them-NMI-s.patch


+ 0 - 0
patches/kernel/0021-x86-entry-64-Initialize-the-top-of-the-IRQ-stack-bef.patch → patches/kernel/0022-x86-entry-64-Initialize-the-top-of-the-IRQ-stack-bef.patch


+ 0 - 0
patches/kernel/0022-x86-entry-64-Add-unwind-hint-annotations.patch → patches/kernel/0023-x86-entry-64-Add-unwind-hint-annotations.patch


+ 0 - 0
patches/kernel/0023-xen-x86-Remove-SME-feature-in-PV-guests.patch → patches/kernel/0024-xen-x86-Remove-SME-feature-in-PV-guests.patch


+ 0 - 0
patches/kernel/0024-x86-xen-64-Rearrange-the-SYSCALL-entries.patch → patches/kernel/0025-x86-xen-64-Rearrange-the-SYSCALL-entries.patch


+ 0 - 0
patches/kernel/0025-irq-Make-the-irqentry-text-section-unconditional.patch → patches/kernel/0026-irq-Make-the-irqentry-text-section-unconditional.patch


+ 0 - 0
patches/kernel/0026-x86-xen-64-Fix-the-reported-SS-and-CS-in-SYSCALL.patch → patches/kernel/0027-x86-xen-64-Fix-the-reported-SS-and-CS-in-SYSCALL.patch


+ 0 - 0
patches/kernel/0027-x86-paravirt-xen-Remove-xen_patch.patch → patches/kernel/0028-x86-paravirt-xen-Remove-xen_patch.patch


+ 0 - 0
patches/kernel/0028-x86-traps-Simplify-pagefault-tracing-logic.patch → patches/kernel/0029-x86-traps-Simplify-pagefault-tracing-logic.patch


+ 0 - 0
patches/kernel/0029-x86-idt-Unify-gate_struct-handling-for-32-64-bit-ker.patch → patches/kernel/0030-x86-idt-Unify-gate_struct-handling-for-32-64-bit-ker.patch


+ 0 - 0
patches/kernel/0030-x86-asm-Replace-access-to-desc_struct-a-b-fields.patch → patches/kernel/0031-x86-asm-Replace-access-to-desc_struct-a-b-fields.patch


+ 0 - 0
patches/kernel/0031-x86-xen-Get-rid-of-paravirt-op-adjust_exception_fram.patch → patches/kernel/0032-x86-xen-Get-rid-of-paravirt-op-adjust_exception_fram.patch


+ 0 - 0
patches/kernel/0032-x86-paravirt-Remove-no-longer-used-paravirt-function.patch → patches/kernel/0033-x86-paravirt-Remove-no-longer-used-paravirt-function.patch


+ 0 - 0
patches/kernel/0033-x86-entry-Fix-idtentry-unwind-hint.patch → patches/kernel/0034-x86-entry-Fix-idtentry-unwind-hint.patch


+ 0 - 0
patches/kernel/0034-x86-mm-64-Initialize-CR4.PCIDE-early.patch → patches/kernel/0035-x86-mm-64-Initialize-CR4.PCIDE-early.patch


+ 0 - 0
patches/kernel/0035-objtool-Add-ORC-unwind-table-generation.patch → patches/kernel/0036-objtool-Add-ORC-unwind-table-generation.patch


+ 0 - 0
patches/kernel/0036-objtool-x86-Add-facility-for-asm-code-to-provide-unw.patch → patches/kernel/0037-objtool-x86-Add-facility-for-asm-code-to-provide-unw.patch


+ 0 - 0
patches/kernel/0037-x86-unwind-Add-the-ORC-unwinder.patch → patches/kernel/0038-x86-unwind-Add-the-ORC-unwinder.patch


+ 0 - 0
patches/kernel/0038-x86-kconfig-Consolidate-unwinders-into-multiple-choi.patch → patches/kernel/0039-x86-kconfig-Consolidate-unwinders-into-multiple-choi.patch


+ 0 - 0
patches/kernel/0039-objtool-Upgrade-libelf-devel-warning-to-error-for-CO.patch → patches/kernel/0040-objtool-Upgrade-libelf-devel-warning-to-error-for-CO.patch


+ 0 - 0
patches/kernel/0040-x86-ldt-64-Refresh-DS-and-ES-when-modify_ldt-changes.patch → patches/kernel/0041-x86-ldt-64-Refresh-DS-and-ES-when-modify_ldt-changes.patch


+ 0 - 0
patches/kernel/0041-x86-mm-Give-each-mm-TLB-flush-generation-a-unique-ID.patch → patches/kernel/0042-x86-mm-Give-each-mm-TLB-flush-generation-a-unique-ID.patch


+ 0 - 0
patches/kernel/0042-x86-mm-Track-the-TLB-s-tlb_gen-and-update-the-flushi.patch → patches/kernel/0043-x86-mm-Track-the-TLB-s-tlb_gen-and-update-the-flushi.patch


+ 0 - 0
patches/kernel/0043-x86-mm-Rework-lazy-TLB-mode-and-TLB-freshness-tracki.patch → patches/kernel/0044-x86-mm-Rework-lazy-TLB-mode-and-TLB-freshness-tracki.patch


+ 0 - 0
patches/kernel/0044-x86-mm-Implement-PCID-based-optimization-try-to-pres.patch → patches/kernel/0045-x86-mm-Implement-PCID-based-optimization-try-to-pres.patch


+ 0 - 0
patches/kernel/0045-x86-mm-Factor-out-CR3-building-code.patch → patches/kernel/0046-x86-mm-Factor-out-CR3-building-code.patch


+ 0 - 0
patches/kernel/0046-x86-mm-64-Stop-using-CR3.PCID-0-in-ASID-aware-code.patch → patches/kernel/0047-x86-mm-64-Stop-using-CR3.PCID-0-in-ASID-aware-code.patch


+ 0 - 0
patches/kernel/0047-x86-mm-Flush-more-aggressively-in-lazy-TLB-mode.patch → patches/kernel/0048-x86-mm-Flush-more-aggressively-in-lazy-TLB-mode.patch


+ 0 - 0
patches/kernel/0048-Revert-x86-mm-Stop-calling-leave_mm-in-idle-code.patch → patches/kernel/0049-Revert-x86-mm-Stop-calling-leave_mm-in-idle-code.patch


+ 0 - 0
patches/kernel/0049-kprobes-x86-Set-up-frame-pointer-in-kprobe-trampolin.patch → patches/kernel/0050-kprobes-x86-Set-up-frame-pointer-in-kprobe-trampolin.patch


+ 0 - 0
patches/kernel/0050-x86-tracing-Introduce-a-static-key-for-exception-tra.patch → patches/kernel/0051-x86-tracing-Introduce-a-static-key-for-exception-tra.patch


+ 0 - 0
patches/kernel/0051-x86-boot-Add-early-cmdline-parsing-for-options-with-.patch → patches/kernel/0052-x86-boot-Add-early-cmdline-parsing-for-options-with-.patch


+ 0 - 0
patches/kernel/0052-mm-x86-mm-Fix-performance-regression-in-get_user_pag.patch → patches/kernel/0053-mm-x86-mm-Fix-performance-regression-in-get_user_pag.patch


+ 0 - 0
patches/kernel/0053-x86-asm-Remove-unnecessary-n-t-in-front-of-CC_SET-fr.patch → patches/kernel/0054-x86-asm-Remove-unnecessary-n-t-in-front-of-CC_SET-fr.patch


+ 0 - 0
patches/kernel/0054-objtool-Don-t-report-end-of-section-error-after-an-e.patch → patches/kernel/0055-objtool-Don-t-report-end-of-section-error-after-an-e.patch


+ 0 - 0
patches/kernel/0055-x86-head-Remove-confusing-comment.patch → patches/kernel/0056-x86-head-Remove-confusing-comment.patch


+ 0 - 0
patches/kernel/0056-x86-head-Remove-unused-bad_address-code.patch → patches/kernel/0057-x86-head-Remove-unused-bad_address-code.patch


+ 0 - 0
patches/kernel/0057-x86-head-Fix-head-ELF-function-annotations.patch → patches/kernel/0058-x86-head-Fix-head-ELF-function-annotations.patch


+ 0 - 0
patches/kernel/0058-x86-boot-Annotate-verify_cpu-as-a-callable-function.patch → patches/kernel/0059-x86-boot-Annotate-verify_cpu-as-a-callable-function.patch


+ 0 - 0
patches/kernel/0059-x86-xen-Fix-xen-head-ELF-annotations.patch → patches/kernel/0060-x86-xen-Fix-xen-head-ELF-annotations.patch


+ 0 - 0
patches/kernel/0060-x86-xen-Add-unwind-hint-annotations.patch → patches/kernel/0061-x86-xen-Add-unwind-hint-annotations.patch


+ 0 - 0
patches/kernel/0061-x86-head-Add-unwind-hint-annotations.patch → patches/kernel/0062-x86-head-Add-unwind-hint-annotations.patch


+ 0 - 0
patches/kernel/0062-ACPI-APEI-adjust-a-local-variable-type-in-ghes_iorem.patch → patches/kernel/0063-ACPI-APEI-adjust-a-local-variable-type-in-ghes_iorem.patch


+ 0 - 0
patches/kernel/0063-x86-unwinder-Make-CONFIG_UNWINDER_ORC-y-the-default-.patch → patches/kernel/0064-x86-unwinder-Make-CONFIG_UNWINDER_ORC-y-the-default-.patch


+ 0 - 0
patches/kernel/0064-x86-fpu-debug-Remove-unused-x86_fpu_state-and-x86_fp.patch → patches/kernel/0065-x86-fpu-debug-Remove-unused-x86_fpu_state-and-x86_fp.patch


+ 0 - 0
patches/kernel/0065-x86-unwind-Rename-unwinder-config-options-to-CONFIG_.patch → patches/kernel/0066-x86-unwind-Rename-unwinder-config-options-to-CONFIG_.patch


+ 0 - 0
patches/kernel/0066-x86-unwind-Make-CONFIG_UNWINDER_ORC-y-the-default-in.patch → patches/kernel/0067-x86-unwind-Make-CONFIG_UNWINDER_ORC-y-the-default-in.patch


+ 0 - 0
patches/kernel/0067-bitops-Add-clear-set_bit32-to-linux-bitops.h.patch → patches/kernel/0068-bitops-Add-clear-set_bit32-to-linux-bitops.h.patch


+ 0 - 0
patches/kernel/0068-x86-cpuid-Add-generic-table-for-CPUID-dependencies.patch → patches/kernel/0069-x86-cpuid-Add-generic-table-for-CPUID-dependencies.patch


+ 0 - 0
patches/kernel/0069-x86-fpu-Parse-clearcpuid-as-early-XSAVE-argument.patch → patches/kernel/0070-x86-fpu-Parse-clearcpuid-as-early-XSAVE-argument.patch


+ 0 - 0
patches/kernel/0070-x86-fpu-Make-XSAVE-check-the-base-CPUID-features-bef.patch → patches/kernel/0071-x86-fpu-Make-XSAVE-check-the-base-CPUID-features-bef.patch


+ 0 - 0
patches/kernel/0071-x86-fpu-Remove-the-explicit-clearing-of-XSAVE-depend.patch → patches/kernel/0072-x86-fpu-Remove-the-explicit-clearing-of-XSAVE-depend.patch


+ 0 - 0
patches/kernel/0072-x86-platform-UV-Convert-timers-to-use-timer_setup.patch → patches/kernel/0073-x86-platform-UV-Convert-timers-to-use-timer_setup.patch


+ 0 - 0
patches/kernel/0073-objtool-Print-top-level-commands-on-incorrect-usage.patch → patches/kernel/0074-objtool-Print-top-level-commands-on-incorrect-usage.patch


+ 0 - 0
patches/kernel/0074-x86-cpuid-Prevent-out-of-bound-access-in-do_clear_cp.patch → patches/kernel/0075-x86-cpuid-Prevent-out-of-bound-access-in-do_clear_cp.patch


+ 0 - 0
patches/kernel/0075-x86-entry-Use-SYSCALL_DEFINE-macros-for-sys_modify_l.patch → patches/kernel/0076-x86-entry-Use-SYSCALL_DEFINE-macros-for-sys_modify_l.patch


+ 0 - 0
patches/kernel/0076-mm-sparsemem-Allocate-mem_section-at-runtime-for-CON.patch → patches/kernel/0077-mm-sparsemem-Allocate-mem_section-at-runtime-for-CON.patch


+ 0 - 0
patches/kernel/0077-x86-kasan-Use-the-same-shadow-offset-for-4-and-5-lev.patch → patches/kernel/0078-x86-kasan-Use-the-same-shadow-offset-for-4-and-5-lev.patch


+ 0 - 0
patches/kernel/0078-x86-xen-Provide-pre-built-page-tables-only-for-CONFI.patch → patches/kernel/0079-x86-xen-Provide-pre-built-page-tables-only-for-CONFI.patch


+ 0 - 0
patches/kernel/0079-x86-xen-Drop-5-level-paging-support-code-from-the-XE.patch → patches/kernel/0080-x86-xen-Drop-5-level-paging-support-code-from-the-XE.patch


+ 0 - 0
patches/kernel/0080-ACPI-APEI-remove-the-unused-dead-code-for-SEA-NMI-no.patch → patches/kernel/0081-ACPI-APEI-remove-the-unused-dead-code-for-SEA-NMI-no.patch


+ 0 - 0
patches/kernel/0081-x86-asm-Don-t-use-the-confusing-.ifeq-directive.patch → patches/kernel/0082-x86-asm-Don-t-use-the-confusing-.ifeq-directive.patch


+ 0 - 0
patches/kernel/0082-x86-build-Beautify-build-log-of-syscall-headers.patch → patches/kernel/0083-x86-build-Beautify-build-log-of-syscall-headers.patch


+ 0 - 0
patches/kernel/0083-x86-mm-64-Rename-the-register_page_bootmem_memmap-si.patch → patches/kernel/0084-x86-mm-64-Rename-the-register_page_bootmem_memmap-si.patch


+ 0 - 0
patches/kernel/0084-x86-cpufeatures-Enable-new-SSE-AVX-AVX512-CPU-featur.patch → patches/kernel/0085-x86-cpufeatures-Enable-new-SSE-AVX-AVX512-CPU-featur.patch


+ 0 - 0
patches/kernel/0085-x86-mm-Relocate-page-fault-error-codes-to-traps.h.patch → patches/kernel/0086-x86-mm-Relocate-page-fault-error-codes-to-traps.h.patch


+ 0 - 0
patches/kernel/0086-x86-boot-Relocate-definition-of-the-initial-state-of.patch → patches/kernel/0087-x86-boot-Relocate-definition-of-the-initial-state-of.patch


+ 0 - 0
patches/kernel/0087-ptrace-x86-Make-user_64bit_mode-available-to-32-bit-.patch → patches/kernel/0088-ptrace-x86-Make-user_64bit_mode-available-to-32-bit-.patch


+ 0 - 0
patches/kernel/0088-x86-entry-64-Remove-the-restore_c_regs_and_iret-labe.patch → patches/kernel/0089-x86-entry-64-Remove-the-restore_c_regs_and_iret-labe.patch


+ 0 - 0
patches/kernel/0089-x86-entry-64-Split-the-IRET-to-user-and-IRET-to-kern.patch → patches/kernel/0090-x86-entry-64-Split-the-IRET-to-user-and-IRET-to-kern.patch


+ 0 - 0
patches/kernel/0090-x86-entry-64-Move-SWAPGS-into-the-common-IRET-to-use.patch → patches/kernel/0091-x86-entry-64-Move-SWAPGS-into-the-common-IRET-to-use.patch


+ 0 - 0
patches/kernel/0091-x86-entry-64-Simplify-reg-restore-code-in-the-standa.patch → patches/kernel/0092-x86-entry-64-Simplify-reg-restore-code-in-the-standa.patch


+ 0 - 0
patches/kernel/0092-x86-entry-64-Shrink-paranoid_exit_restore-and-make-l.patch → patches/kernel/0093-x86-entry-64-Shrink-paranoid_exit_restore-and-make-l.patch


+ 0 - 0
patches/kernel/0093-x86-entry-64-Use-pop-instead-of-movq-in-syscall_retu.patch → patches/kernel/0094-x86-entry-64-Use-pop-instead-of-movq-in-syscall_retu.patch


+ 0 - 0
patches/kernel/0094-x86-entry-64-Merge-the-fast-and-slow-SYSRET-paths.patch → patches/kernel/0095-x86-entry-64-Merge-the-fast-and-slow-SYSRET-paths.patch


+ 0 - 0
patches/kernel/0095-x86-entry-64-Use-POP-instead-of-MOV-to-restore-regs-.patch → patches/kernel/0096-x86-entry-64-Use-POP-instead-of-MOV-to-restore-regs-.patch


+ 0 - 0
patches/kernel/0096-x86-entry-64-Remove-the-RESTORE_._REGS-infrastructur.patch → patches/kernel/0097-x86-entry-64-Remove-the-RESTORE_._REGS-infrastructur.patch


+ 0 - 0
patches/kernel/0097-xen-x86-entry-64-Add-xen-NMI-trap-entry.patch → patches/kernel/0098-xen-x86-entry-64-Add-xen-NMI-trap-entry.patch


+ 0 - 0
patches/kernel/0098-x86-entry-64-De-Xen-ify-our-NMI-code.patch → patches/kernel/0099-x86-entry-64-De-Xen-ify-our-NMI-code.patch


+ 0 - 0
patches/kernel/0099-x86-entry-32-Pull-the-MSR_IA32_SYSENTER_CS-update-co.patch → patches/kernel/0100-x86-entry-32-Pull-the-MSR_IA32_SYSENTER_CS-update-co.patch


+ 0 - 0
patches/kernel/0100-x86-entry-64-Pass-SP0-directly-to-load_sp0.patch → patches/kernel/0101-x86-entry-64-Pass-SP0-directly-to-load_sp0.patch


+ 0 - 0
patches/kernel/0101-x86-entry-Add-task_top_of_stack-to-find-the-top-of-a.patch → patches/kernel/0102-x86-entry-Add-task_top_of_stack-to-find-the-top-of-a.patch


+ 0 - 0
patches/kernel/0102-x86-xen-64-x86-entry-64-Clean-up-SP-code-in-cpu_init.patch → patches/kernel/0103-x86-xen-64-x86-entry-64-Clean-up-SP-code-in-cpu_init.patch


+ 0 - 0
patches/kernel/0103-x86-entry-64-Stop-initializing-TSS.sp0-at-boot.patch → patches/kernel/0104-x86-entry-64-Stop-initializing-TSS.sp0-at-boot.patch


+ 0 - 0
patches/kernel/0104-x86-entry-64-Remove-all-remaining-direct-thread_stru.patch → patches/kernel/0105-x86-entry-64-Remove-all-remaining-direct-thread_stru.patch


+ 0 - 0
patches/kernel/0105-x86-entry-32-Fix-cpu_current_top_of_stack-initializa.patch → patches/kernel/0106-x86-entry-32-Fix-cpu_current_top_of_stack-initializa.patch


+ 0 - 0
patches/kernel/0106-x86-entry-64-Remove-thread_struct-sp0.patch → patches/kernel/0107-x86-entry-64-Remove-thread_struct-sp0.patch


+ 0 - 0
patches/kernel/0107-x86-traps-Use-a-new-on_thread_stack-helper-to-clean-.patch → patches/kernel/0108-x86-traps-Use-a-new-on_thread_stack-helper-to-clean-.patch


+ 0 - 0
patches/kernel/0108-x86-entry-64-Shorten-TEST-instructions.patch → patches/kernel/0109-x86-entry-64-Shorten-TEST-instructions.patch


+ 0 - 0
patches/kernel/0109-x86-cpuid-Replace-set-clear_bit32.patch → patches/kernel/0110-x86-cpuid-Replace-set-clear_bit32.patch


+ 0 - 0
patches/kernel/0110-bitops-Revert-cbe96375025e-bitops-Add-clear-set_bit3.patch → patches/kernel/0111-bitops-Revert-cbe96375025e-bitops-Add-clear-set_bit3.patch


+ 0 - 0
patches/kernel/0111-x86-mm-Define-_PAGE_TABLE-using-_KERNPG_TABLE.patch → patches/kernel/0112-x86-mm-Define-_PAGE_TABLE-using-_KERNPG_TABLE.patch


+ 0 - 0
patches/kernel/0112-x86-cpufeatures-Re-tabulate-the-X86_FEATURE-definiti.patch → patches/kernel/0113-x86-cpufeatures-Re-tabulate-the-X86_FEATURE-definiti.patch


+ 0 - 0
patches/kernel/0113-x86-cpufeatures-Fix-various-details-in-the-feature-d.patch → patches/kernel/0114-x86-cpufeatures-Fix-various-details-in-the-feature-d.patch


+ 0 - 0
patches/kernel/0114-selftests-x86-protection_keys-Fix-syscall-NR-redefin.patch → patches/kernel/0115-selftests-x86-protection_keys-Fix-syscall-NR-redefin.patch


+ 0 - 0
patches/kernel/0115-selftests-x86-ldt_gdt-Robustify-against-set_thread_a.patch → patches/kernel/0116-selftests-x86-ldt_gdt-Robustify-against-set_thread_a.patch


Some files were not shown because too many files changed in this diff