stable.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	stable@vger.kernel.org, Scott Mayhew <smayhew@redhat.com>,
	Trond Myklebust <trond.myklebust@primarydata.com>
Subject: [PATCH 4.14 045/140] NFS: Fix unstable write completion
Date: Tue, 13 Mar 2018 16:24:08 +0100	[thread overview]
Message-ID: <20180313152501.115762751@linuxfoundation.org> (raw)
In-Reply-To: <20180313152458.201155692@linuxfoundation.org>

4.14-stable review patch.  If anyone has any objections, please let me know.

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

From: Trond Myklebust <trond.myklebust@primarydata.com>

commit c4f24df942a181699c5bab01b8e5e82b925f77f3 upstream.

We do want to respect the FLUSH_SYNC argument to nfs_commit_inode() to
ensure that all outstanding COMMIT requests to the inode in question are
complete. Currently we may exit early from both nfs_commit_inode() and
nfs_write_inode() even if there are COMMIT requests in flight, or unstable
writes on the commit list.

In order to get the right semantics w.r.t. sync_inode(), we don't need
to have nfs_commit_inode() reset the inode dirty flags when called from
nfs_wb_page() and/or nfs_wb_all(). We just need to ensure that
nfs_write_inode() leaves them in the right state if there are outstanding
commits, or stable pages.

Reported-by: Scott Mayhew <smayhew@redhat.com>
Fixes: dc4fd9ab01ab ("nfs: don't wait on commit in nfs_commit_inode()...")
Cc: stable@vger.kernel.org # v4.14+
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 fs/nfs/write.c |   83 +++++++++++++++++++++++++++++----------------------------
 1 file changed, 43 insertions(+), 40 deletions(-)

--- a/fs/nfs/write.c
+++ b/fs/nfs/write.c
@@ -1877,40 +1877,43 @@ int nfs_generic_commit_list(struct inode
 	return status;
 }
 
-int nfs_commit_inode(struct inode *inode, int how)
+static int __nfs_commit_inode(struct inode *inode, int how,
+		struct writeback_control *wbc)
 {
 	LIST_HEAD(head);
 	struct nfs_commit_info cinfo;
 	int may_wait = how & FLUSH_SYNC;
-	int error = 0;
-	int res;
+	int ret, nscan;
 
 	nfs_init_cinfo_from_inode(&cinfo, inode);
 	nfs_commit_begin(cinfo.mds);
-	res = nfs_scan_commit(inode, &head, &cinfo);
-	if (res)
-		error = nfs_generic_commit_list(inode, &head, how, &cinfo);
+	for (;;) {
+		ret = nscan = nfs_scan_commit(inode, &head, &cinfo);
+		if (ret <= 0)
+			break;
+		ret = nfs_generic_commit_list(inode, &head, how, &cinfo);
+		if (ret < 0)
+			break;
+		ret = 0;
+		if (wbc && wbc->sync_mode == WB_SYNC_NONE) {
+			if (nscan < wbc->nr_to_write)
+				wbc->nr_to_write -= nscan;
+			else
+				wbc->nr_to_write = 0;
+		}
+		if (nscan < INT_MAX)
+			break;
+		cond_resched();
+	}
 	nfs_commit_end(cinfo.mds);
-	if (res == 0)
-		return res;
-	if (error < 0)
-		goto out_error;
-	if (!may_wait)
-		goto out_mark_dirty;
-	error = wait_on_commit(cinfo.mds);
-	if (error < 0)
-		return error;
-	return res;
-out_error:
-	res = error;
-	/* Note: If we exit without ensuring that the commit is complete,
-	 * we must mark the inode as dirty. Otherwise, future calls to
-	 * sync_inode() with the WB_SYNC_ALL flag set will fail to ensure
-	 * that the data is on the disk.
-	 */
-out_mark_dirty:
-	__mark_inode_dirty(inode, I_DIRTY_DATASYNC);
-	return res;
+	if (ret || !may_wait)
+		return ret;
+	return wait_on_commit(cinfo.mds);
+}
+
+int nfs_commit_inode(struct inode *inode, int how)
+{
+	return __nfs_commit_inode(inode, how, NULL);
 }
 EXPORT_SYMBOL_GPL(nfs_commit_inode);
 
@@ -1920,11 +1923,11 @@ int nfs_write_inode(struct inode *inode,
 	int flags = FLUSH_SYNC;
 	int ret = 0;
 
-	/* no commits means nothing needs to be done */
-	if (!atomic_long_read(&nfsi->commit_info.ncommit))
-		return ret;
-
 	if (wbc->sync_mode == WB_SYNC_NONE) {
+		/* no commits means nothing needs to be done */
+		if (!atomic_long_read(&nfsi->commit_info.ncommit))
+			goto check_requests_outstanding;
+
 		/* Don't commit yet if this is a non-blocking flush and there
 		 * are a lot of outstanding writes for this mapping.
 		 */
@@ -1935,16 +1938,16 @@ int nfs_write_inode(struct inode *inode,
 		flags = 0;
 	}
 
-	ret = nfs_commit_inode(inode, flags);
-	if (ret >= 0) {
-		if (wbc->sync_mode == WB_SYNC_NONE) {
-			if (ret < wbc->nr_to_write)
-				wbc->nr_to_write -= ret;
-			else
-				wbc->nr_to_write = 0;
-		}
-		return 0;
-	}
+	ret = __nfs_commit_inode(inode, flags, wbc);
+	if (!ret) {
+		if (flags & FLUSH_SYNC)
+			return 0;
+	} else if (atomic_long_read(&nfsi->commit_info.ncommit))
+		goto out_mark_dirty;
+
+check_requests_outstanding:
+	if (!atomic_read(&nfsi->commit_info.rpcs_out))
+		return ret;
 out_mark_dirty:
 	__mark_inode_dirty(inode, I_DIRTY_DATASYNC);
 	return ret;

  parent reply	other threads:[~2018-03-13 15:37 UTC|newest]

Thread overview: 135+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-13 15:23 [PATCH 4.14 000/140] 4.14.27-stable review Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 001/140] kbuild: move "_all" target out of $(KBUILD_SRC) conditional Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 002/140] watchdog: hpwdt: SMBIOS check Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 003/140] watchdog: hpwdt: Check source of NMI Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 004/140] watchdog: hpwdt: fix unused variable warning Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 005/140] watchdog: hpwdt: Remove legacy NMI sourcing Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 006/140] ARM: omap2: hide omap3_save_secure_ram on non-OMAP3 builds Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 007/140] ASoC: Intel: Skylake: Fix jack name format substitution Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 008/140] ASoC: Intel: kbl: fix jack name Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 009/140] netfilter: add back stackpointer size checks Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 010/140] netfilter: ipt_CLUSTERIP: fix a race condition of proc file creation Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 011/140] netfilter: xt_hashlimit: fix lock imbalance Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 012/140] netfilter: x_tables: fix missing timer initialization in xt_LED Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 013/140] netfilter: nat: cope with negative port range Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 014/140] netfilter: IDLETIMER: be syzkaller friendly Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 015/140] netfilter: ebtables: CONFIG_COMPAT: dont trust userland offsets Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 016/140] netfilter: bridge: ebt_among: add missing match size checks Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 017/140] netfilter: ipv6: fix use-after-free Write in nf_nat_ipv6_manip_pkt Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 019/140] tpm_tis: Move ilb_base_addr to tpm_tis_data Greg Kroah-Hartman
2018-03-14  0:42   ` Shaikh, Azhar
2018-03-13 15:23 ` [PATCH 4.14 020/140] tpm: Keep CLKRUN enabled throughout the duration of transmit_cmd() Greg Kroah-Hartman
2018-03-14  0:42   ` Shaikh, Azhar
2018-03-13 15:23 ` [PATCH 4.14 021/140] tpm: delete the TPM_TIS_CLK_ENABLE flag Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 022/140] tpm: remove unused variables Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 023/140] tpm: only attempt to disable the LPC CLKRUN if is already enabled Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 024/140] scsi: qla2xxx: Fix system crash for Notify ack timeout handling Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 025/140] scsi: qla2xxx: Fix gpnid error processing Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 026/140] scsi: qla2xxx: Move session delete to driver work queue Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 027/140] scsi: qla2xxx: Skip IRQ affinity for Target QPairs Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 028/140] scsi: qla2xxx: Fix re-login for Nport Handle in use Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 029/140] scsi: qla2xxx: Retry switch command on time out Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 030/140] scsi: qla2xxx: Serialize GPNID for multiple RSCN Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 031/140] scsi: qla2xxx: Fix login state machine stuck at GPDB Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 032/140] scsi: qla2xxx: Fix NPIV host cleanup in target mode Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 033/140] scsi: qla2xxx: Fix Relogin being triggered too fast Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 034/140] scsi: qla2xxx: Fix PRLI state check Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 035/140] scsi: qla2xxx: Fix abort command deadlock due to spinlock Greg Kroah-Hartman
2018-03-13 15:23 ` [PATCH 4.14 036/140] scsi: qla2xxx: Replace fcport alloc with qla2x00_alloc_fcport Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 037/140] scsi: qla2xxx: Fix scan state field for fcport Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 038/140] scsi: qla2xxx: Clear loop id after delete Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 039/140] scsi: qla2xxx: Defer processing of GS IOCB calls Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 040/140] scsi: qla2xxx: Remove aborting ELS IOCB call issued as part of timeout Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 041/140] scsi: qla2xxx: Fix system crash in qlt_plogi_ack_unref Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 042/140] scsi: qla2xxx: Fix memory leak in dual/target mode Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 043/140] NFS: Fix an incorrect type in struct nfs_direct_req Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 044/140] pNFS: Prevent the layout header refcount going to zero in pnfs_roc() Greg Kroah-Hartman
2018-03-13 15:24 ` Greg Kroah-Hartman [this message]
2018-03-13 15:24 ` [PATCH 4.14 046/140] RDMA/ucma: Limit possible option size Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 047/140] RDMA/ucma: Check that user doesnt overflow QP state Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 048/140] RDMA/mlx5: Fix integer overflow while resizing CQ Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 049/140] IB/uverbs: Improve lockdep_check Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 050/140] net/smc: fix NULL pointer dereference on sock_create_kern() error path Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 051/140] regulator: stm32-vrefbuf: fix check on ready flag Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 052/140] drm/i915: Fix rsvd2 mask when out-fence is returned Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 053/140] drm/i915: Clear the in-use marker on execbuf failure Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 057/140] drm/i915/perf: fix perf stream opening lock Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 058/140] scsi: core: Avoid that ATA error handling can trigger a kernel hang or oops Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 059/140] scsi: qla2xxx: Fix NULL pointer crash due to active timer for ABTS Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 060/140] drm/i915: Always call to intel_display_set_init_power() in resume_early Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 061/140] workqueue: Allow retrieval of current tasks work struct Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 062/140] drm: Allow determining if current task is output poll worker Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 063/140] drm/nouveau: Fix deadlock on runtime suspend Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 064/140] drm/radeon: " Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 065/140] drm/amdgpu: " Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 066/140] drm/nouveau: prefer XBGR2101010 for addfb ioctl Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 067/140] drm/amd/powerplay/smu7: allow mclk switching with no displays Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 068/140] drm/amd/powerplay/vega10: " Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 069/140] Revert "drm/radeon/pm: autoswitch power state when in balanced mode" Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 070/140] drm/radeon: insist on 32-bit DMA for Cedar on PPC64/PPC64LE Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 071/140] drm/amd/powerplay: fix power over limit on Fiji Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 073/140] drm/amdgpu: Notify sbios device ready before send request Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 078/140] MIPS: BMIPS: Do not mask IPIs during suspend Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 079/140] MIPS: ath25: Check for kzalloc allocation failure Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 080/140] MIPS: OCTEON: irq: Check for null return on kzalloc allocation Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 081/140] PCI: dwc: Fix enumeration end when reaching root subordinate Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 082/140] Input: matrix_keypad - fix race when disabling interrupts Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 083/140] lib/bug.c: exclude non-BUG/WARN exceptions from report_bug() Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 084/140] mm/memblock.c: hardcode the end_pfn being -1 Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 085/140] mm/page_alloc: fix memmap_init_zone pageblock alignment Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 086/140] Documentation/sphinx: Fix Directive import error Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 087/140] loop: Fix lost writes caused by missing flag Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 088/140] virtio_ring: fix num_free handling in error case Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 089/140] KVM: s390: fix memory overwrites when not using SCA entries Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 090/140] arm64: mm: fix thinko in non-global page table attribute check Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 091/140] IB/core: Fix missing RDMA cgroups release in case of failure to register device Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 092/140] kbuild: Handle builtin dtb file names containing hyphens Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 093/140] dm bufio: avoid false-positive Wmaybe-uninitialized warning Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 094/140] IB/mlx5: Fix incorrect size of klms in the memory region Greg Kroah-Hartman
2018-03-13 15:24 ` [PATCH 4.14 095/140] bcache: fix crashes in duplicate cache device register Greg Kroah-Hartman
2018-03-13 16:19   ` Marc MERLIN
2018-03-13 17:26     ` Michael Lyle
2018-03-13 15:24 ` [PATCH 4.14 096/140] bcache: dont attach backing with duplicate UUID Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 097/140] x86/MCE: Save microcode revision in machine check records Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 098/140] x86/MCE: Serialize sysfs changes Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 099/140] perf tools: Fix trigger class trigger_on() Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 101/140] ALSA: hda/realtek - Add support headset mode for DELL WYSE Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 102/140] ALSA: hda/realtek - Add headset mode support for Dell laptop Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 103/140] ALSA: hda/realtek: Limit mic boost on T480 Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 104/140] ALSA: hda/realtek - Fix dock line-out volume on Dell Precision 7520 Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 105/140] ALSA: hda/realtek - Make dock sound work on ThinkPad L570 Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 108/140] ALSA: hda - Fix a wrong FIXUP for alc289 on Dell machines Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 109/140] ALSA: hda: add dock and led support for HP EliteBook 820 G3 Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 110/140] ALSA: hda: add dock and led support for HP ProBook 640 G2 Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 111/140] scsi: qla2xxx: Fix NULL pointer crash due to probe failure Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 112/140] scsi: qla2xxx: Fix recursion while sending terminate exchange Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 113/140] dt-bindings: Document mti,mips-cpc binding Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 114/140] MIPS: CPC: Map registers using DT in mips_cpc_default_phys_base() Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 115/140] nospec: Kill array_index_nospec_mask_check() Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 116/140] nospec: Include <asm/barrier.h> dependency Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 117/140] x86/entry: Reduce the code footprint of the idtentry macro Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 119/140] x86/mm: Remove stale comment about KMEMCHECK Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 120/140] x86/asm: Improve how GEN_*_SUFFIXED_RMWcc() specify clobbers Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 121/140] x86/LDT: Avoid warning in 32-bit builds with older gcc Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 122/140] x86-64/realmode: Add instruction suffix Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 123/140] Revert "x86/retpoline: Simplify vmexit_fill_RSB()" Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 124/140] x86/speculation: Use IBRS if available before calling into firmware Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 125/140] x86/retpoline: Support retpoline builds with Clang Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 126/140] x86/speculation, objtool: Annotate indirect calls/jumps for objtool Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 127/140] x86/speculation: Move firmware_restrict_branch_speculation_*() from C to CPP Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 128/140] x86/paravirt, objtool: Annotate indirect calls Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 129/140] x86/boot, objtool: Annotate indirect jump in secondary_startup_64() Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 130/140] x86/mm/sme, objtool: Annotate indirect call in sme_encrypt_execute() Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 131/140] objtool: Use existing global variables for options Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 132/140] objtool: Add retpoline validation Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 133/140] kbuild: re-order the code to not parse unnecessary variables Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 134/140] kbuild: Set KBUILD_CFLAGS before incl. arch Makefile Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 135/140] kbuild: move cc-option and cc-disable-warning after " Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 136/140] objtool: Add module specific retpoline rules Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 137/140] objtool, retpolines: Integrate objtool with retpoline support more closely Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 138/140] objtool: Fix another switch table detection issue Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 139/140] objtool: Fix 32-bit build Greg Kroah-Hartman
2018-03-13 15:25 ` [PATCH 4.14 140/140] x86/kprobes: Fix kernel crash when probing .entry_trampoline code Greg Kroah-Hartman
2018-03-13 22:27 ` [PATCH 4.14 000/140] 4.14.27-stable review Guenter Roeck
2018-03-14 10:55 ` Greg Kroah-Hartman
2018-03-14 18:26   ` Naresh Kamboju

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=20180313152501.115762751@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=smayhew@redhat.com \
    --cc=stable@vger.kernel.org \
    --cc=trond.myklebust@primarydata.com \
    /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;
as well as URLs for NNTP newsgroup(s).