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,
	Frederic Barrat <fbarrat@linux.vnet.ibm.com>,
	Andrew Donnellan <andrew.donnellan@au1.ibm.com>,
	Vaibhav Jain <vaibhav@linux.vnet.ibm.com>,
	Michael Ellerman <mpe@ellerman.id.au>
Subject: [PATCH 4.8 113/140] cxl: Prevent adapter reset if an active context exists
Date: Wed, 26 Oct 2016 14:22:53 +0200	[thread overview]
Message-ID: <20161026122225.216433334@linuxfoundation.org> (raw)
In-Reply-To: <20161026122220.384323763@linuxfoundation.org>

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

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

From: Vaibhav Jain <vaibhav@linux.vnet.ibm.com>

commit 70b565bbdb911023373e035225ab10077e4ab937 upstream.

This patch prevents resetting the cxl adapter via sysfs in presence of
one or more active cxl_context on it. This protects against an
unrecoverable error caused by PSL owning a dirty cache line even after
reset and host tries to touch the same cache line. In case a force reset
of the card is required irrespective of any active contexts, the int
value -1 can be stored in the 'reset' sysfs attribute of the card.

The patch introduces a new atomic_t member named contexts_num inside
struct cxl that holds the number of active context attached to the card
, which is checked against '0' before proceeding with the reset. To
prevent against a race condition where a context is activated just after
reset check is performed, the contexts_num is atomically set to '-1'
after reset-check to indicate that no more contexts can be activated on
the card anymore.

Before activating a context we atomically test if contexts_num is
non-negative and if so, increment its value by one. In case the value of
contexts_num is negative then it indicates that the card is about to be
reset and context activation is error-ed out at that point.

Fixes: 62fa19d4b4fd ("cxl: Add ability to reset the card")
Acked-by: Frederic Barrat <fbarrat@linux.vnet.ibm.com>
Reviewed-by: Andrew Donnellan <andrew.donnellan@au1.ibm.com>
Signed-off-by: Vaibhav Jain <vaibhav@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 Documentation/ABI/testing/sysfs-class-cxl |    7 +++--
 drivers/misc/cxl/api.c                    |    9 ++++++
 drivers/misc/cxl/context.c                |    3 ++
 drivers/misc/cxl/cxl.h                    |   24 +++++++++++++++++
 drivers/misc/cxl/file.c                   |   11 +++++++
 drivers/misc/cxl/guest.c                  |    3 ++
 drivers/misc/cxl/main.c                   |   42 +++++++++++++++++++++++++++++-
 drivers/misc/cxl/pci.c                    |    2 +
 drivers/misc/cxl/sysfs.c                  |   27 ++++++++++++++++---
 9 files changed, 121 insertions(+), 7 deletions(-)

--- a/Documentation/ABI/testing/sysfs-class-cxl
+++ b/Documentation/ABI/testing/sysfs-class-cxl
@@ -220,8 +220,11 @@ What:           /sys/class/cxl/<card>/re
 Date:           October 2014
 Contact:        linuxppc-dev@lists.ozlabs.org
 Description:    write only
-                Writing 1 will issue a PERST to card which may cause the card
-                to reload the FPGA depending on load_image_on_perst.
+                Writing 1 will issue a PERST to card provided there are no
+                contexts active on any one of the card AFUs. This may cause
+                the card to reload the FPGA depending on load_image_on_perst.
+                Writing -1 will do a force PERST irrespective of any active
+                contexts on the card AFUs.
 Users:		https://github.com/ibm-capi/libcxl
 
 What:		/sys/class/cxl/<card>/perst_reloads_same_image (not in a guest)
--- a/drivers/misc/cxl/api.c
+++ b/drivers/misc/cxl/api.c
@@ -229,6 +229,14 @@ int cxl_start_context(struct cxl_context
 	if (ctx->status == STARTED)
 		goto out; /* already started */
 
+	/*
+	 * Increment the mapped context count for adapter. This also checks
+	 * if adapter_context_lock is taken.
+	 */
+	rc = cxl_adapter_context_get(ctx->afu->adapter);
+	if (rc)
+		goto out;
+
 	if (task) {
 		ctx->pid = get_task_pid(task, PIDTYPE_PID);
 		ctx->glpid = get_task_pid(task->group_leader, PIDTYPE_PID);
@@ -240,6 +248,7 @@ int cxl_start_context(struct cxl_context
 
 	if ((rc = cxl_ops->attach_process(ctx, kernel, wed, 0))) {
 		put_pid(ctx->pid);
+		cxl_adapter_context_put(ctx->afu->adapter);
 		cxl_ctx_put();
 		goto out;
 	}
--- a/drivers/misc/cxl/context.c
+++ b/drivers/misc/cxl/context.c
@@ -238,6 +238,9 @@ int __detach_context(struct cxl_context
 	put_pid(ctx->glpid);
 
 	cxl_ctx_put();
+
+	/* Decrease the attached context count on the adapter */
+	cxl_adapter_context_put(ctx->afu->adapter);
 	return 0;
 }
 
--- a/drivers/misc/cxl/cxl.h
+++ b/drivers/misc/cxl/cxl.h
@@ -615,6 +615,14 @@ struct cxl {
 	bool perst_select_user;
 	bool perst_same_image;
 	bool psl_timebase_synced;
+
+	/*
+	 * number of contexts mapped on to this card. Possible values are:
+	 * >0: Number of contexts mapped and new one can be mapped.
+	 *  0: No active contexts and new ones can be mapped.
+	 * -1: No contexts mapped and new ones cannot be mapped.
+	 */
+	atomic_t contexts_num;
 };
 
 int cxl_pci_alloc_one_irq(struct cxl *adapter);
@@ -940,4 +948,20 @@ bool cxl_pci_is_vphb_device(struct pci_d
 
 /* decode AFU error bits in the PSL register PSL_SERR_An */
 void cxl_afu_decode_psl_serr(struct cxl_afu *afu, u64 serr);
+
+/*
+ * Increments the number of attached contexts on an adapter.
+ * In case an adapter_context_lock is taken the return -EBUSY.
+ */
+int cxl_adapter_context_get(struct cxl *adapter);
+
+/* Decrements the number of attached contexts on an adapter */
+void cxl_adapter_context_put(struct cxl *adapter);
+
+/* If no active contexts then prevents contexts from being attached */
+int cxl_adapter_context_lock(struct cxl *adapter);
+
+/* Unlock the contexts-lock if taken. Warn and force unlock otherwise */
+void cxl_adapter_context_unlock(struct cxl *adapter);
+
 #endif
--- a/drivers/misc/cxl/file.c
+++ b/drivers/misc/cxl/file.c
@@ -205,11 +205,22 @@ static long afu_ioctl_start_work(struct
 	ctx->pid = get_task_pid(current, PIDTYPE_PID);
 	ctx->glpid = get_task_pid(current->group_leader, PIDTYPE_PID);
 
+	/*
+	 * Increment the mapped context count for adapter. This also checks
+	 * if adapter_context_lock is taken.
+	 */
+	rc = cxl_adapter_context_get(ctx->afu->adapter);
+	if (rc) {
+		afu_release_irqs(ctx, ctx);
+		goto out;
+	}
+
 	trace_cxl_attach(ctx, work.work_element_descriptor, work.num_interrupts, amr);
 
 	if ((rc = cxl_ops->attach_process(ctx, false, work.work_element_descriptor,
 							amr))) {
 		afu_release_irqs(ctx, ctx);
+		cxl_adapter_context_put(ctx->afu->adapter);
 		goto out;
 	}
 
--- a/drivers/misc/cxl/guest.c
+++ b/drivers/misc/cxl/guest.c
@@ -1152,6 +1152,9 @@ struct cxl *cxl_guest_init_adapter(struc
 	if ((rc = cxl_sysfs_adapter_add(adapter)))
 		goto err_put1;
 
+	/* release the context lock as the adapter is configured */
+	cxl_adapter_context_unlock(adapter);
+
 	return adapter;
 
 err_put1:
--- a/drivers/misc/cxl/main.c
+++ b/drivers/misc/cxl/main.c
@@ -243,8 +243,10 @@ struct cxl *cxl_alloc_adapter(void)
 	if (dev_set_name(&adapter->dev, "card%i", adapter->adapter_num))
 		goto err2;
 
-	return adapter;
+	/* start with context lock taken */
+	atomic_set(&adapter->contexts_num, -1);
 
+	return adapter;
 err2:
 	cxl_remove_adapter_nr(adapter);
 err1:
@@ -286,6 +288,44 @@ int cxl_afu_select_best_mode(struct cxl_
 	return 0;
 }
 
+int cxl_adapter_context_get(struct cxl *adapter)
+{
+	int rc;
+
+	rc = atomic_inc_unless_negative(&adapter->contexts_num);
+	return rc >= 0 ? 0 : -EBUSY;
+}
+
+void cxl_adapter_context_put(struct cxl *adapter)
+{
+	atomic_dec_if_positive(&adapter->contexts_num);
+}
+
+int cxl_adapter_context_lock(struct cxl *adapter)
+{
+	int rc;
+	/* no active contexts -> contexts_num == 0 */
+	rc = atomic_cmpxchg(&adapter->contexts_num, 0, -1);
+	return rc ? -EBUSY : 0;
+}
+
+void cxl_adapter_context_unlock(struct cxl *adapter)
+{
+	int val = atomic_cmpxchg(&adapter->contexts_num, -1, 0);
+
+	/*
+	 * contexts lock taken -> contexts_num == -1
+	 * If not true then show a warning and force reset the lock.
+	 * This will happen when context_unlock was requested without
+	 * doing a context_lock.
+	 */
+	if (val != -1) {
+		atomic_set(&adapter->contexts_num, 0);
+		WARN(1, "Adapter context unlocked with %d active contexts",
+		     val);
+	}
+}
+
 static int __init init_cxl(void)
 {
 	int rc = 0;
--- a/drivers/misc/cxl/pci.c
+++ b/drivers/misc/cxl/pci.c
@@ -1484,6 +1484,8 @@ static int cxl_configure_adapter(struct
 	if ((rc = cxl_native_register_psl_err_irq(adapter)))
 		goto err;
 
+	/* Release the context lock as adapter is configured */
+	cxl_adapter_context_unlock(adapter);
 	return 0;
 
 err:
--- a/drivers/misc/cxl/sysfs.c
+++ b/drivers/misc/cxl/sysfs.c
@@ -75,12 +75,31 @@ static ssize_t reset_adapter_store(struc
 	int val;
 
 	rc = sscanf(buf, "%i", &val);
-	if ((rc != 1) || (val != 1))
+	if ((rc != 1) || (val != 1 && val != -1))
 		return -EINVAL;
 
-	if ((rc = cxl_ops->adapter_reset(adapter)))
-		return rc;
-	return count;
+	/*
+	 * See if we can lock the context mapping that's only allowed
+	 * when there are no contexts attached to the adapter. Once
+	 * taken this will also prevent any context from getting activated.
+	 */
+	if (val == 1) {
+		rc =  cxl_adapter_context_lock(adapter);
+		if (rc)
+			goto out;
+
+		rc = cxl_ops->adapter_reset(adapter);
+		/* In case reset failed release context lock */
+		if (rc)
+			cxl_adapter_context_unlock(adapter);
+
+	} else if (val == -1) {
+		/* Perform a forced adapter reset */
+		rc = cxl_ops->adapter_reset(adapter);
+	}
+
+out:
+	return rc ? rc : count;
 }
 
 static ssize_t load_image_on_perst_show(struct device *device,



  parent reply	other threads:[~2016-10-26 12:29 UTC|newest]

Thread overview: 140+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20161026122540epcas4p46005dbdfffd52a053abab7ecf222382c@epcas4p4.samsung.com>
2016-10-26 12:21 ` [PATCH 4.8 000/140] 4.8.5-stable review Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 001/140] gpio: mpc8xxx: Correct irq handler function Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 002/140] mei: fix return value on disconnection Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 003/140] mei: me: add kaby point device ids Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 004/140] regulator: tps65910: Work around silicon erratum SWCZ010 Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 005/140] clk: imx6: initialize GPU clocks Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 006/140] clk: imx6: fix i.MX6DL clock tree to reflect reality Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 007/140] spi: spidev_test: Fix buffer overflow in unescape() Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 008/140] PM / devfreq: event: remove duplicate devfreq_event_get_drvdata() Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 009/140] ath10k: fix copy engine 5 destination ring stuck Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 010/140] rtlwifi: Fix missing country code for Great Britain Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 012/140] mmc: sdhci: cast unsigned int to unsigned long long to avoid unexpeted error Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 013/140] PCI: Mark Atheros AR9580 to avoid bus reset Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 014/140] PCI: tegra: Fix argument order in tegra_pcie_phy_disable() Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 015/140] platform: dont return 0 from platform_get_irq[_byname]() on error Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 016/140] cpufreq: ti: Use generic platdev driver Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 017/140] cpufreq: conservative: Fix next frequency selection Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 018/140] cpufreq: skip invalid entries when searching the frequency Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 019/140] cpufreq: intel_pstate: Fix unsafe HWP MSR access Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 021/140] parisc: Increase KERNEL_INITIAL_SIZE for 32-bit SMP kernels Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 022/140] parisc: Fix self-detected CPU stall warnings on Mako machines Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 023/140] parisc: Fix kernel memory layout regarding position of __gp Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 024/140] parisc: Increase initial kernel mapping size Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 025/140] pstore/ramoops: fixup driver removal Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 027/140] pstore/ram: Use memcpy_toio instead of memcpy Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 028/140] pstore/ram: Use memcpy_fromio() to save old buffer Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 029/140] perf intel-pt: Fix snapshot overlap detection decoder errors Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 030/140] perf intel-pt: Fix estimated timestamps for cycle-accurate mode Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 031/140] perf intel-pt: Fix MTC timestamp calculation for large MTC periods Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 032/140] dm: mark request_queue dead before destroying the DM device Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 033/140] dm: return correct error code in dm_resume()s retry loop Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 034/140] dm rq: take request_queue lock while clearing QUEUE_FLAG_STOPPED Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 035/140] dm mpath: check if paths request_queue is dying in activate_path() Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 036/140] dm crypt: fix crash on exit Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 037/140] powerpc/xmon: Dont use ld on 32-bit Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 038/140] powerpc/vdso64: Use double word compare on pointers Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 039/140] powerpc/powernv: Pass CPU-endian PE number to opal_pci_eeh_freeze_clear() Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 040/140] powerpc/eeh: Null check uses of eeh_pe_bus_get Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 041/140] powerpc/powernv: Use CPU-endian hub diag-data type in pnv_eeh_get_and_dump_hub_diag() Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 042/140] powerpc/powernv: Use CPU-endian PEST in pnv_pci_dump_p7ioc_diag_data() Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 043/140] powerpc/mm: Update FORCE_MAX_ZONEORDER range to allow hugetlb w/4K Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 044/140] powerpc/64: Fix incorrect return value from __copy_tofrom_user Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 045/140] powerpc/pseries: Fix stack corruption in htpe code Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 046/140] powerpc/mm/hash64: Fix might_have_hea() check Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 047/140] IB/srp: Fix infinite loop when FMR sg[0].offset != 0 Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 048/140] IB/core: correctly handle rdma_rw_init_mrs() failure Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 049/140] ubi: Deal with interrupted erasures in WL Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 050/140] zfcp: fix fc_host port_type with NPIV Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 051/140] zfcp: fix ELS/GS request&response length for hardware data router Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 052/140] zfcp: close window with unblocked rport during rport gone Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 053/140] zfcp: retain trace level for SCSI and HBA FSF response records Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 054/140] zfcp: restore: Dont use 0 to indicate invalid LUN in rec trace Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 055/140] zfcp: trace on request for open and close of WKA port Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 056/140] zfcp: restore tracing of handle for port and LUN with HBA records Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 057/140] zfcp: fix D_ID field with actual value on tracing SAN responses Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 058/140] zfcp: fix payload trace length for SAN request&response Greg Kroah-Hartman
2016-10-26 12:21   ` [PATCH 4.8 059/140] zfcp: trace full payload of all SAN records (req,resp,iels) Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 060/140] scsi: zfcp: spin_lock_irqsave() is not nestable Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 061/140] fbdev/efifb: Fix 16 color palette entry calculation Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 062/140] ovl: Fix info leak in ovl_lookup_temp() Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 063/140] ovl: copy_up_xattr(): use strnlen Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 064/140] [media] mb86a20s: fix the locking logic Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 065/140] [media] mb86a20s: fix demod settings Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 066/140] [media] cx231xx: dont return error on success Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 067/140] [media] cx231xx: fix GPIOs for Pixelview SBTVD hybrid Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 068/140] [media] cx231xx: cant proceed if I2C bus register fails Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 069/140] ALSA: hda - Fix a failure of micmute led when having multi adcs Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 071/140] MIPS: ptrace: Fix regs_return_value for kernel context Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 072/140] Input: i8042 - skip selftest on ASUS laptops Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 073/140] Input: elantech - force needed quirks on Fujitsu H760 Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 074/140] Input: elantech - add Fujitsu Lifebook E556 to force crc_enabled Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 075/140] sunrpc: fix write space race causing stalls Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 076/140] NFSD: fix corruption in notifier registration Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 077/140] NFS: Fix inode corruption in nfs_prime_dcache() Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 078/140] NFSv4: Dont report revoked delegations as valid in nfs_have_delegation() Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 079/140] NFSv4: nfs4_copy_delegation_stateid() must fail if the delegation is invalid Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 080/140] NFSv4: Open state recovery must account for file permission changes Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 081/140] NFSv4.2: Fix a reference leak in nfs42_proc_layoutstats_generic Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 082/140] pnfs/blocklayout: fix last_write_offset incorrectly set to page boundary Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 083/140] scsi: Fix use-after-free Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 085/140] watchdog: mt7621_wdt: Remove assignment of dev pointer Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 086/140] metag: Only define atomic_dec_if_positive conditionally Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 087/140] soc/fsl/qe: fix gpio save_regs functions Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 088/140] soc/fsl/qe: fix Oops on CPM1 (and likely CPM2) Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 089/140] arm64: KVM: VHE: reset PSTATE.PAN on entry to EL2 Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 090/140] arc: dont leak bits of kernel stack into coredump Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 091/140] fs/super.c: fix race between freeze_super() and thaw_super() Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 092/140] cifs: Limit the overall credit acquired Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 093/140] fs/cifs: keep guid when assigning fid to fileinfo Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 094/140] Clarify locking of cifs file and tcon structures and make more granular Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 095/140] Display number of credits available Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 096/140] Set previous session id correctly on SMB3 reconnect Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 097/140] SMB3: GUIDs should be constructed as random but valid uuids Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 098/140] Do not send SMB3 SET_INFO request if nothing is changing Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 099/140] Cleanup missing frees on some ioctls Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 100/140] Fix regression which breaks DFS mounting Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 101/140] blkcg: Unlock blkcg_pol_mutex only once when cpd == NULL Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 102/140] x86/e820: Dont merge consecutive E820_PRAM ranges Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 104/140] x86/platform/UV: Fix support for EFI_OLD_MEMMAP after BIOS callback updates Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 106/140] pinctrl: intel: Only restore pins that are used by the driver Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 108/140] sched/fair: Fix incorrect task group ->load_avg Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 109/140] sched/fair: Fix min_vruntime tracking Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 110/140] irqchip/gicv3: Handle loop timeout proper Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 111/140] irqchip/eznps: Acknowledge NPS_IPI before calling the handler Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 112/140] irqchip/gic-v3-its: Fix entry size mask for GITS_BASER Greg Kroah-Hartman
2016-10-26 12:22   ` Greg Kroah-Hartman [this message]
2016-10-26 12:22   ` [PATCH 4.8 114/140] isofs: Do not return EACCES for unknown filesystems Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 115/140] memstick: rtsx_usb_ms: Runtime resume the device when polling for cards Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 116/140] memstick: rtsx_usb_ms: Manage runtime PM when accessing the device Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 117/140] arm64: swp emulation: bound LL/SC retries before rescheduling Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 118/140] arm64: kaslr: fix breakage with CONFIG_MODVERSIONS=y Greg Kroah-Hartman
2016-10-26 12:22   ` [PATCH 4.8 119/140] arm64: percpu: rewrite ll/sc loops in assembly Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 120/140] arm64: kernel: Init MDCR_EL2 even in the absence of a PMU Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 121/140] arm64: Cortex-A53 errata workaround: check for kernel addresses Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 122/140] arm64: KVM: Take S1 walks into account when determining S2 write faults Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 123/140] ceph: fix error handling in ceph_read_iter Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 124/140] powerpc/mm: Prevent unlikely crash in copro_calculate_slb() Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 125/140] mmc: core: Annotate cmd_hdr as __le32 Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 126/140] mmc: core: switch to 1V8 or 1V2 for hs400es mode Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 127/140] mmc: rtsx_usb_sdmmc: Avoid keeping the device runtime resumed when unused Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 128/140] mmc: rtsx_usb_sdmmc: Handle runtime PM while changing the led Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 129/140] KVM: s390: reject invalid modes for runtime instrumentation Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 130/140] fscrypto: make XTS tweak initialization endian-independent Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 131/140] fscrypto: lock inode while setting encryption policy Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 132/140] ext4: do not advertise encryption support when disabled Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 133/140] jbd2: fix incorrect unlock on j_list_lock Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 134/140] ubifs: Fix xattr_names length in exit paths Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 135/140] ubifs: Abort readdir upon error Greg Kroah-Hartman
2016-10-26 12:40     ` Richard Weinberger
2016-10-26 13:16       ` Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 136/140] target/tcm_fc: use CPU affinity for responses Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 137/140] target: Re-add missing SCF_ACK_KREF assignment in v4.1.y Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 138/140] target: Make EXTENDED_COPY 0xe4 failure return COPY TARGET DEVICE NOT REACHABLE Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 139/140] target: Dont override EXTENDED_COPY xcopy_pt_cmd SCSI status code Greg Kroah-Hartman
2016-10-26 12:23   ` [PATCH 4.8 140/140] Revert "target: Fix residual overflow handling in target_complete_cmd_with_length" Greg Kroah-Hartman
2016-10-26 18:44   ` [PATCH 4.8 000/140] 4.8.5-stable review Shuah Khan
2016-10-27  5:15     ` Greg Kroah-Hartman
2016-10-26 21:49   ` Guenter Roeck
2016-10-27  5:16     ` Greg Kroah-Hartman
     [not found]   ` <5811acdd.4336c20a.fcad1.2674@mx.google.com>
2016-10-27 13:04     ` Greg Kroah-Hartman

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=20161026122225.216433334@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=andrew.donnellan@au1.ibm.com \
    --cc=fbarrat@linux.vnet.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mpe@ellerman.id.au \
    --cc=stable@vger.kernel.org \
    --cc=vaibhav@linux.vnet.ibm.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).