mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Ben Hutchings <ben@decadent.org.uk>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: akpm@linux-foundation.org, "Michal Hocko" <mhocko@kernel.org>,
	"Christopher Snowhill" <kode54@gmail.com>,
	"Andi Kleen" <ak@linux.intel.com>,
	"xxxxxx xxxxxx" <xxxxxx@xxxxxx.xxx>,
	"H . Peter Anvin" <hpa@zytor.com>,
	"Thomas Gleixner" <tglx@linutronix.de>,
	"Dave Hansen" <dave.hansen@intel.com>,
	"Vlastimil Babka" <vbabka@suse.cz>,
	"Linus Torvalds" <torvalds@linux-foundation.org>
Subject: [PATCH 3.16 113/131] x86/speculation/l1tf: Fix off-by-one error when warning that system has too much RAM
Date: Sat, 29 Sep 2018 22:43:07 +0100	[thread overview]
Message-ID: <lsq.1538257387.201932437@decadent.org.uk> (raw)
In-Reply-To: <lsq.1538257386.330095874@decadent.org.uk>

3.16.59-rc1 review patch.  If anyone has any objections, please let me know.

------------------

From: Vlastimil Babka <vbabka@suse.cz>

commit b0a182f875689647b014bc01d36b340217792852 upstream.

Two users have reported [1] that they have an "extremely unlikely" system
with more than MAX_PA/2 memory and L1TF mitigation is not effective. In
fact it's a CPU with 36bits phys limit (64GB) and 32GB memory, but due to
holes in the e820 map, the main region is almost 500MB over the 32GB limit:

[    0.000000] BIOS-e820: [mem 0x0000000100000000-0x000000081effffff] usable

Suggestions to use 'mem=32G' to enable the L1TF mitigation while losing the
500MB revealed, that there's an off-by-one error in the check in
l1tf_select_mitigation().

l1tf_pfn_limit() returns the last usable pfn (inclusive) and the range
check in the mitigation path does not take this into account.

Instead of amending the range check, make l1tf_pfn_limit() return the first
PFN which is over the limit which is less error prone. Adjust the other
users accordingly.

[1] https://bugzilla.suse.com/show_bug.cgi?id=1105536

Fixes: 17dbca119312 ("x86/speculation/l1tf: Add sysfs reporting for l1tf")
Reported-by: xxxxxx xxxxxx <xxxxxx@xxxxxx.xxx>
Reported-by: Christopher Snowhill <kode54@gmail.com>
Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: "H . Peter Anvin" <hpa@zytor.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Dave Hansen <dave.hansen@intel.com>
Cc: Michal Hocko <mhocko@kernel.org>
Link: https://lkml.kernel.org/r/20180823134418.17008-1-vbabka@suse.cz
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
 arch/x86/include/asm/processor.h | 2 +-
 arch/x86/mm/init.c               | 2 +-
 arch/x86/mm/mmap.c               | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

--- a/arch/x86/include/asm/processor.h
+++ b/arch/x86/include/asm/processor.h
@@ -167,7 +167,7 @@ extern void fpu_detect(struct cpuinfo_x8
 
 static inline unsigned long long l1tf_pfn_limit(void)
 {
-	return BIT_ULL(boot_cpu_data.x86_phys_bits - 1 - PAGE_SHIFT) - 1;
+	return BIT_ULL(boot_cpu_data.x86_phys_bits - 1 - PAGE_SHIFT);
 }
 
 extern void early_cpu_init(void);
--- a/arch/x86/mm/init.c
+++ b/arch/x86/mm/init.c
@@ -710,7 +710,7 @@ unsigned long max_swapfile_size(void)
 
 	if (boot_cpu_has_bug(X86_BUG_L1TF)) {
 		/* Limit the swap file size to MAX_PA/2 for L1TF workaround */
-		unsigned long long l1tf_limit = l1tf_pfn_limit() + 1;
+		unsigned long long l1tf_limit = l1tf_pfn_limit();
 		/*
 		 * We encode swap offsets also with 3 bits below those for pfn
 		 * which makes the usable limit higher.
--- a/arch/x86/mm/mmap.c
+++ b/arch/x86/mm/mmap.c
@@ -131,7 +131,7 @@ bool pfn_modify_allowed(unsigned long pf
 	/* If it's real memory always allow */
 	if (pfn_valid(pfn))
 		return true;
-	if (pfn > l1tf_pfn_limit() && !capable(CAP_SYS_ADMIN))
+	if (pfn >= l1tf_pfn_limit() && !capable(CAP_SYS_ADMIN))
 		return false;
 	return true;
 }


  parent reply	other threads:[~2018-09-29 21:59 UTC|newest]

Thread overview: 134+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-09-29 21:43 [PATCH 3.16 000/131] 3.16.59-rc1 review Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 040/131] x86/speculation: Rework speculative_store_bypass_update() Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 022/131] seccomp: Add filter flag to opt-out of SSB mitigation Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 107/131] x86/speculation/l1tf: Limit swap file size to MAX_PA/2 Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 072/131] ia64: drop _PAGE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 092/131] x86/mm: Move swap offset/type up in PTE to work around erratum Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 095/131] x86/speculation/l1tf: Protect swap entries against L1TF Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 122/131] x86/speculation/l1tf: Suggest what to do on systems with too much RAM Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 106/131] x86/speculation/l1tf: Disallow non privileged high MMIO PROT_NONE mappings Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 126/131] irda: Fix memory leak caused by repeated binds of irda socket Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 096/131] x86: mm: Add PUD functions Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 044/131] x86/bugs: Rework spec_ctrl base and mask logic Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 062/131] alpha: drop _PAGE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 094/131] x86/speculation/l1tf: Change order of offset/type in swap entry Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 053/131] mm: fix regression in remap_file_pages() emulation Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 104/131] mm/pagewalk: remove pgd_entry() and pud_entry() Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 056/131] mm: drop vm_ops->remap_pages and generic_file_remap_pages() stub Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 131/131] exec: Limit arg stack to at most 75% of _STK_LIM Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 060/131] mm: remove rest usage of VM_NONLINEAR and pte_file() Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 084/131] sparc: drop pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 042/131] x86/bugs: Expose x86_spec_ctrl_base directly Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 038/131] x86/bugs, KVM: Extend speculation control for VIRT_SPEC_CTRL Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 085/131] tile: drop pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 098/131] x86/speculation/l1tf: Make sure the first page is always reserved Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 032/131] KVM: SVM: Move spec control call after restore of GS Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 103/131] drm/drivers: add support for using the arch wc mapping API Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 023/131] seccomp: Move speculation migitation control to arch code Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 120/131] x86/mm/pat: Make set_memory_np() L1TF safe Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 024/131] x86/speculation: Make "seccomp" the default mode for Speculative Store Bypass Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 005/131] x86/bugs, KVM: Support the combination of guest and host IBRS Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 011/131] x86/bugs/AMD: Add support to disable RDS on Fam[15,16,17]h if requested Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 017/131] nospec: Allow getting/setting on non-current task Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 093/131] mm: x86: move _PAGE_SWP_SOFT_DIRTY from bit 7 to bit 1 Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 018/131] proc: Provide details on speculation flaw mitigations Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 086/131] um: drop _PAGE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 013/131] x86/speculation: Create spec-ctrl.h to avoid include hell Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 121/131] x86/mm/kmmio: Make the tracer robust against L1TF Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 043/131] x86/bugs: Remove x86_spec_ctrl_set() Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 066/131] avr32: drop _PAGE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 029/131] x86/bugs: Make cpu_show_common() static Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 055/131] mm: drop support of non-linear mapping from fault codepath Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 125/131] mm/vmstat: Make NR_TLB_REMOTE_FLUSH_RECEIVED available even on UP Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 058/131] rmap: drop support of non-linear mappings Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 034/131] x86/cpufeatures: Disentangle MSR_SPEC_CTRL enumeration from IBRS Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 027/131] Documentation/spec_ctrl: Do some minor cleanups Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 074/131] m68k: drop _PAGE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 014/131] prctl: Add speculation control prctls Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 051/131] x86/cpufeatures: Show KAISER in cpuinfo Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 115/131] x86/speculation/l1tf: Unbreak !__HAVE_ARCH_PFN_MODIFY_ALLOWED architectures Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 117/131] x86/speculation/l1tf: Exempt zeroed PTEs from inversion Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 065/131] arm: drop L_PTE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 001/131] x86/nospec: Simplify alternative_msr_write() Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 077/131] mips: drop _PAGE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 006/131] x86/bugs: Expose /sys/../spec_store_bypass Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 112/131] x86/speculation/l1tf: Fix overflow in l1tf_pfn_limit() on 32bit Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 108/131] x86/init: fix build with CONFIG_SWAP=n Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 088/131] x86: drop _PAGE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 082/131] score: " Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 003/131] x86/bugs: Concentrate bug reporting into a separate function Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 116/131] x86/speculation/l1tf: Invert all not present mappings Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 076/131] microblaze: drop _PAGE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 091/131] x86/speculation/l1tf: Increase 32bit PAE __PHYSICAL_PAGE_SHIFT Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 028/131] x86/bugs: Fix __ssb_select_mitigation() return type Ben Hutchings
2018-09-29 21:43 ` Ben Hutchings [this message]
2018-09-29 21:43 ` [PATCH 3.16 118/131] x86/speculation/l1tf: Protect NUMA-balance entries against L1TF Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 057/131] proc: drop handling non-linear mappings Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 048/131] KVM/VMX: Expose SSBD properly to guests Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 015/131] x86/process: Allow runtime control of Speculative Store Bypass Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 100/131] mm: Add vm_insert_pfn_prot() Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 008/131] x86/bugs: Provide boot parameters for the spec_store_bypass_disable mitigation Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 070/131] frv: drop _PAGE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 009/131] x86/bugs/intel: Set proper CPU features and setup RDS Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 097/131] x86/speculation/l1tf: Protect PROT_NONE PTEs against speculation Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 012/131] x86/KVM/VMX: Expose SPEC_CTRL Bit(2) to the guest Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 114/131] x86/speculation/l1tf: Fix up pte->pfn conversion for PAE Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 050/131] x86/xen: Add call of speculative_store_bypass_ht_init() to PV paths Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 037/131] x86/speculation: Handle HT correctly on AMD Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 064/131] arm64: drop PTE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 061/131] asm-generic: drop unused pte_file* helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 101/131] mm: fix cache mode tracking in vm_insert_mixed() Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 035/131] x86/cpufeatures: Disentangle SSBD enumeration Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 105/131] pagewalk: improve vma handling Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 102/131] x86/io: add interface to reserve io memtype for a resource range. (v1.1) Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 031/131] x86/cpu: Make alternative_msr_write work for 32-bit code Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 039/131] x86/speculation: Add virtualized speculative store bypass disable support Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 047/131] x86/bugs: Rename SSBD_NO to SSB_NO Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 021/131] seccomp: Use PR_SPEC_FORCE_DISABLE Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 041/131] x86/bugs: Unify x86_spec_ctrl_{set_guest,restore_host} Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 078/131] mn10300: drop _PAGE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 075/131] metag: " Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 052/131] mm: replace remap_file_pages() syscall with emulation Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 045/131] x86/speculation, KVM: Implement support for VIRT_SPEC_CTRL/LS_CFG Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 129/131] HID: debug: check length before copy_to_user() Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 059/131] mm: replace vma->sharead.linear with vma->shared Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 067/131] blackfin: drop pte_file() Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 089/131] xtensa: drop _PAGE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 063/131] arc: " Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 007/131] x86/cpufeatures: Add X86_FEATURE_RDS Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 025/131] x86/bugs: Rename _RDS to _SSBD Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 002/131] x86/bugs: Concentrate bug detection into a separate function Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 127/131] irda: Only insert new objects into the global database via setsockopt Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 080/131] parisc: drop _PAGE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 049/131] KVM: x86: SVM: Call x86_spec_ctrl_set_guest/host() with interrupts disabled Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 099/131] x86/speculation/l1tf: Add sysfs reporting for l1tf Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 083/131] sh: drop _PAGE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 030/131] x86/bugs: Fix the parameters alignment and missing void Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 128/131] floppy: Do not copy a kernel pointer to user memory in FDGETPRM ioctl Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 068/131] c6x: drop pte_file() Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 119/131] x86/speculation/l1tf: Make pmd/pud_mknotpresent() invert Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 069/131] cris: drop _PAGE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 046/131] KVM: SVM: Implement VIRT_SPEC_CTRL support for SSBD Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 073/131] m32r: drop _PAGE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 033/131] x86/speculation: Use synthetic bits for IBRS/IBPB/STIBP Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 123/131] via-cuda: Use spinlock_irq_save/restore instead of enable/disable_irq Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 081/131] s390: drop pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 010/131] x86/bugs: Whitelist allowed SPEC_CTRL MSR values Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 130/131] scsi: target: iscsi: Use hex2bin instead of a re-implementation Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 110/131] x86/speculation/l1tf: Extend 64bit swap file size limit Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 004/131] x86/bugs: Read SPEC_CTRL MSR during boot and re-use reserved bits Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 109/131] x86/bugs: Move the l1tf function and define pr_fmt properly Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 111/131] x86/speculation/l1tf: Protect PAE swap entries against L1TF Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 071/131] hexagon: drop _PAGE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 020/131] prctl: Add force disable speculation Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 054/131] mm: drop support of non-linear mapping from unmap/zap codepath Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 026/131] proc: Use underscores for SSBD in 'status' Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 016/131] x86/speculation: Add prctl for Speculative Store Bypass mitigation Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 087/131] unicore32: drop pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 124/131] x86/tools: Fix gcc-7 warning in relocs.c Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 019/131] seccomp: Enable speculation flaw mitigations Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 036/131] x86/cpufeatures: Add FEATURE_ZEN Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 079/131] openrisc: drop _PAGE_FILE and pte_file()-related helpers Ben Hutchings
2018-09-29 21:43 ` [PATCH 3.16 090/131] powerpc: " Ben Hutchings
2018-09-30 14:06 ` [PATCH 3.16 000/131] 3.16.59-rc1 review Guenter Roeck
2018-09-30 16:59   ` Ben Hutchings

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=lsq.1538257387.201932437@decadent.org.uk \
    --to=ben@decadent.org.uk \
    --cc=ak@linux.intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=dave.hansen@intel.com \
    --cc=hpa@zytor.com \
    --cc=kode54@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mhocko@kernel.org \
    --cc=stable@vger.kernel.org \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.org \
    --cc=vbabka@suse.cz \
    --cc=xxxxxx@xxxxxx.xxx \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome