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, Andreas Gruenbacher <agruenba@redhat.com>,
	Bob Peterson <rpeterso@redhat.com>
Subject: [PATCH 5.2 037/144] gfs2: gfs2_walk_metadata fix
Date: Wed, 14 Aug 2019 18:59:53 +0200	[thread overview]
Message-ID: <20190814165801.373631307@linuxfoundation.org> (raw)
In-Reply-To: <20190814165759.466811854@linuxfoundation.org>

From: Andreas Gruenbacher <agruenba@redhat.com>

commit a27a0c9b6a208722016c8ec5ad31ec96082b91ec upstream.

It turns out that the current version of gfs2_metadata_walker suffers
from multiple problems that can cause gfs2_hole_size to report an
incorrect size.  This will confuse fiemap as well as lseek with the
SEEK_DATA flag.

Fix that by changing gfs2_hole_walker to compute the metapath to the
first data block after the hole (if any), and compute the hole size
based on that.

Fixes xfstest generic/490.

Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
Reviewed-by: Bob Peterson <rpeterso@redhat.com>
Cc: stable@vger.kernel.org # v4.18+
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 fs/gfs2/bmap.c |  168 ++++++++++++++++++++++++++++++++++-----------------------
 1 file changed, 103 insertions(+), 65 deletions(-)

--- a/fs/gfs2/bmap.c
+++ b/fs/gfs2/bmap.c
@@ -390,6 +390,19 @@ static int fillup_metapath(struct gfs2_i
 	return mp->mp_aheight - x - 1;
 }
 
+static sector_t metapath_to_block(struct gfs2_sbd *sdp, struct metapath *mp)
+{
+	sector_t factor = 1, block = 0;
+	int hgt;
+
+	for (hgt = mp->mp_fheight - 1; hgt >= 0; hgt--) {
+		if (hgt < mp->mp_aheight)
+			block += mp->mp_list[hgt] * factor;
+		factor *= sdp->sd_inptrs;
+	}
+	return block;
+}
+
 static void release_metapath(struct metapath *mp)
 {
 	int i;
@@ -430,60 +443,84 @@ static inline unsigned int gfs2_extent_l
 	return ptr - first;
 }
 
-typedef const __be64 *(*gfs2_metadata_walker)(
-		struct metapath *mp,
-		const __be64 *start, const __be64 *end,
-		u64 factor, void *data);
-
-#define WALK_STOP ((__be64 *)0)
-#define WALK_NEXT ((__be64 *)1)
-
-static int gfs2_walk_metadata(struct inode *inode, sector_t lblock,
-		u64 len, struct metapath *mp, gfs2_metadata_walker walker,
-		void *data)
+enum walker_status { WALK_STOP, WALK_FOLLOW, WALK_CONTINUE };
+
+/*
+ * gfs2_metadata_walker - walk an indirect block
+ * @mp: Metapath to indirect block
+ * @ptrs: Number of pointers to look at
+ *
+ * When returning WALK_FOLLOW, the walker must update @mp to point at the right
+ * indirect block to follow.
+ */
+typedef enum walker_status (*gfs2_metadata_walker)(struct metapath *mp,
+						   unsigned int ptrs);
+
+/*
+ * gfs2_walk_metadata - walk a tree of indirect blocks
+ * @inode: The inode
+ * @mp: Starting point of walk
+ * @max_len: Maximum number of blocks to walk
+ * @walker: Called during the walk
+ *
+ * Returns 1 if the walk was stopped by @walker, 0 if we went past @max_len or
+ * past the end of metadata, and a negative error code otherwise.
+ */
+
+static int gfs2_walk_metadata(struct inode *inode, struct metapath *mp,
+		u64 max_len, gfs2_metadata_walker walker)
 {
-	struct metapath clone;
 	struct gfs2_inode *ip = GFS2_I(inode);
 	struct gfs2_sbd *sdp = GFS2_SB(inode);
-	const __be64 *start, *end, *ptr;
 	u64 factor = 1;
 	unsigned int hgt;
-	int ret = 0;
+	int ret;
 
-	for (hgt = ip->i_height - 1; hgt >= mp->mp_aheight; hgt--)
+	/*
+	 * The walk starts in the lowest allocated indirect block, which may be
+	 * before the position indicated by @mp.  Adjust @max_len accordingly
+	 * to avoid a short walk.
+	 */
+	for (hgt = mp->mp_fheight - 1; hgt >= mp->mp_aheight; hgt--) {
+		max_len += mp->mp_list[hgt] * factor;
+		mp->mp_list[hgt] = 0;
 		factor *= sdp->sd_inptrs;
+	}
 
 	for (;;) {
-		u64 step;
+		u16 start = mp->mp_list[hgt];
+		enum walker_status status;
+		unsigned int ptrs;
+		u64 len;
 
 		/* Walk indirect block. */
-		start = metapointer(hgt, mp);
-		end = metaend(hgt, mp);
-
-		step = (end - start) * factor;
-		if (step > len)
-			end = start + DIV_ROUND_UP_ULL(len, factor);
-
-		ptr = walker(mp, start, end, factor, data);
-		if (ptr == WALK_STOP)
+		ptrs = (hgt >= 1 ? sdp->sd_inptrs : sdp->sd_diptrs) - start;
+		len = ptrs * factor;
+		if (len > max_len)
+			ptrs = DIV_ROUND_UP_ULL(max_len, factor);
+		status = walker(mp, ptrs);
+		switch (status) {
+		case WALK_STOP:
+			return 1;
+		case WALK_FOLLOW:
+			BUG_ON(mp->mp_aheight == mp->mp_fheight);
+			ptrs = mp->mp_list[hgt] - start;
+			len = ptrs * factor;
 			break;
-		if (step >= len)
+		case WALK_CONTINUE:
 			break;
-		len -= step;
-		if (ptr != WALK_NEXT) {
-			BUG_ON(!*ptr);
-			mp->mp_list[hgt] += ptr - start;
-			goto fill_up_metapath;
 		}
+		if (len >= max_len)
+			break;
+		max_len -= len;
+		if (status == WALK_FOLLOW)
+			goto fill_up_metapath;
 
 lower_metapath:
 		/* Decrease height of metapath. */
-		if (mp != &clone) {
-			clone_metapath(&clone, mp);
-			mp = &clone;
-		}
 		brelse(mp->mp_bh[hgt]);
 		mp->mp_bh[hgt] = NULL;
+		mp->mp_list[hgt] = 0;
 		if (!hgt)
 			break;
 		hgt--;
@@ -491,10 +528,7 @@ lower_metapath:
 
 		/* Advance in metadata tree. */
 		(mp->mp_list[hgt])++;
-		start = metapointer(hgt, mp);
-		end = metaend(hgt, mp);
-		if (start >= end) {
-			mp->mp_list[hgt] = 0;
+		if (mp->mp_list[hgt] >= sdp->sd_inptrs) {
 			if (!hgt)
 				break;
 			goto lower_metapath;
@@ -502,44 +536,36 @@ lower_metapath:
 
 fill_up_metapath:
 		/* Increase height of metapath. */
-		if (mp != &clone) {
-			clone_metapath(&clone, mp);
-			mp = &clone;
-		}
 		ret = fillup_metapath(ip, mp, ip->i_height - 1);
 		if (ret < 0)
-			break;
+			return ret;
 		hgt += ret;
 		for (; ret; ret--)
 			do_div(factor, sdp->sd_inptrs);
 		mp->mp_aheight = hgt + 1;
 	}
-	if (mp == &clone)
-		release_metapath(mp);
-	return ret;
+	return 0;
 }
 
-struct gfs2_hole_walker_args {
-	u64 blocks;
-};
-
-static const __be64 *gfs2_hole_walker(struct metapath *mp,
-		const __be64 *start, const __be64 *end,
-		u64 factor, void *data)
+static enum walker_status gfs2_hole_walker(struct metapath *mp,
+					   unsigned int ptrs)
 {
-	struct gfs2_hole_walker_args *args = data;
-	const __be64 *ptr;
+	const __be64 *start, *ptr, *end;
+	unsigned int hgt;
+
+	hgt = mp->mp_aheight - 1;
+	start = metapointer(hgt, mp);
+	end = start + ptrs;
 
 	for (ptr = start; ptr < end; ptr++) {
 		if (*ptr) {
-			args->blocks += (ptr - start) * factor;
+			mp->mp_list[hgt] += ptr - start;
 			if (mp->mp_aheight == mp->mp_fheight)
 				return WALK_STOP;
-			return ptr;  /* increase height */
+			return WALK_FOLLOW;
 		}
 	}
-	args->blocks += (end - start) * factor;
-	return WALK_NEXT;
+	return WALK_CONTINUE;
 }
 
 /**
@@ -557,12 +583,24 @@ static const __be64 *gfs2_hole_walker(st
 static int gfs2_hole_size(struct inode *inode, sector_t lblock, u64 len,
 			  struct metapath *mp, struct iomap *iomap)
 {
-	struct gfs2_hole_walker_args args = { };
-	int ret = 0;
+	struct metapath clone;
+	u64 hole_size;
+	int ret;
+
+	clone_metapath(&clone, mp);
+	ret = gfs2_walk_metadata(inode, &clone, len, gfs2_hole_walker);
+	if (ret < 0)
+		goto out;
+
+	if (ret == 1)
+		hole_size = metapath_to_block(GFS2_SB(inode), &clone) - lblock;
+	else
+		hole_size = len;
+	iomap->length = hole_size << inode->i_blkbits;
+	ret = 0;
 
-	ret = gfs2_walk_metadata(inode, lblock, len, mp, gfs2_hole_walker, &args);
-	if (!ret)
-		iomap->length = args.blocks << inode->i_blkbits;
+out:
+	release_metapath(&clone);
 	return ret;
 }
 



  parent reply	other threads:[~2019-08-14 17:27 UTC|newest]

Thread overview: 155+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-14 16:59 [PATCH 5.2 000/144] 5.2.9-stable review Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 001/144] Revert "PCI: Add missing link delays required by the PCIe spec" Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 002/144] IIO: Ingenic JZ47xx: Set clock divider on probe Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 003/144] iio: cros_ec_accel_legacy: Fix incorrect channel setting Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 004/144] iio: imu: mpu6050: add missing available scan masks Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 005/144] iio: adc: gyroadc: fix uninitialized return code Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 006/144] iio: adc: max9611: Fix misuse of GENMASK macro Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 007/144] staging: gasket: apex: fix copy-paste typo Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 008/144] staging: wilc1000: flush the workqueue before deinit the host Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 009/144] staging: android: ion: Bail out upon SIGKILL when allocating memory Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 010/144] Staging: fbtft: Fix probing of gpio descriptor Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 011/144] Staging: fbtft: Fix reset assertion when using " Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 012/144] crypto: ccp - Fix oops by properly managing allocated structures Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 013/144] crypto: ccp - Add support for valid authsize values less than 16 Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 014/144] crypto: ccp - Ignore tag length when decrypting GCM ciphertext Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 015/144] driver core: platform: return -ENXIO for missing GpioInt Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 016/144] usb: usbfs: fix double-free of usb memory upon submiturb error Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 017/144] Revert "USB: rio500: simplify locking" Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 018/144] usb: iowarrior: fix deadlock on disconnect Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 019/144] sound: fix a memory leak bug Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 020/144] mmc: cavium: Set the correct dma max segment size for mmc_host Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 021/144] mmc: cavium: Add the missing dma unmap when the dma has finished Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 022/144] loop: set PF_MEMALLOC_NOIO for the worker thread Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 023/144] bdev: Fixup error handling in blkdev_get() Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 024/144] Input: usbtouchscreen - initialize PM mutex before using it Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 025/144] Input: elantech - enable SMBus on new (2018+) systems Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 026/144] Input: synaptics - enable RMI mode for HP Spectre X360 Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 027/144] x86/mm: Check for pfn instead of page in vmalloc_sync_one() Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 028/144] x86/mm: Sync also unmappings in vmalloc_sync_all() Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 029/144] mm/vmalloc: Sync unmappings in __purge_vmap_area_lazy() Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 030/144] coresight: Fix DEBUG_LOCKS_WARN_ON for uninitialized attribute Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 031/144] perf annotate: Fix s390 gap between kernel end and module start Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 032/144] perf db-export: Fix thread__exec_comm() Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 033/144] perf record: Fix module size on s390 Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 034/144] x86/purgatory: Do not use __builtin_memcpy and __builtin_memset Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 035/144] x86/purgatory: Use CFLAGS_REMOVE rather than reset KBUILD_CFLAGS Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 036/144] genirq/affinity: Create affinity mask for single vector Greg Kroah-Hartman
2019-08-14 16:59 ` Greg Kroah-Hartman [this message]
2019-08-14 16:59 ` [PATCH 5.2 038/144] usb: host: xhci-rcar: Fix timeout in xhci_suspend() Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 039/144] usb: yurex: Fix use-after-free in yurex_delete Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 040/144] usb: typec: ucsi: ccg: Fix uninitilized symbol error Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 041/144] usb: typec: tcpm: free log buf memory when remove debug file Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 042/144] usb: typec: tcpm: remove tcpm dir if no children Greg Kroah-Hartman
2019-08-14 16:59 ` [PATCH 5.2 043/144] usb: typec: tcpm: Add NULL check before dereferencing config Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 044/144] usb: typec: tcpm: Ignore unsupported/unknown alternate mode requests Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 045/144] can: rcar_canfd: fix possible IRQ storm on high load Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 046/144] can: flexcan: fix stop mode acknowledgment Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 047/144] can: flexcan: fix an use-after-free in flexcan_setup_stop_mode() Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 048/144] can: peak_usb: fix potential double kfree_skb() Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 049/144] powerpc: fix off by one in max_zone_pfn initialization for ZONE_DMA Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 050/144] netfilter: nfnetlink: avoid deadlock due to synchronous request_module Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 051/144] vfio-ccw: Set pa_nr to 0 if memory allocation fails for pa_iova_pfn Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 052/144] vfio-ccw: Dont call cp_free if we are processing a channel program Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 053/144] netfilter: Fix rpfilter dropping vrf packets by mistake Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 054/144] netfilter: nf_tables: fix module autoload for redir Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 055/144] netfilter: conntrack: always store window size un-scaled Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 056/144] netfilter: nft_hash: fix symhash with modulus one Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 057/144] scripts/sphinx-pre-install: fix script for RHEL/CentOS Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 058/144] scripts/sphinx-pre-install: dont use LaTeX with CentOS 7 Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 059/144] scripts/sphinx-pre-install: fix latexmk dependencies Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 060/144] rq-qos: dont reset has_sleepers on spurious wakeups Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 061/144] rq-qos: set ourself TASK_UNINTERRUPTIBLE after we schedule Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 062/144] rq-qos: use a mb for got_token Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 063/144] netfilter: nf_tables: Support auto-loading for inet nat Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 064/144] drm/amd/display: No audio endpoint for Dell MST display Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 065/144] drm/amd/display: Clock does not lower in Updateplanes Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 066/144] drm/amd/display: Wait for backlight programming completion in set backlight level Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 067/144] drm/amd/display: fix DMCU hang when going into Modern Standby Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 068/144] drm/amd/display: use encoders engine id to find matched free audio device Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 069/144] drm/amd/display: put back front end initialization sequence Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 070/144] drm/amd/display: allocate 4 ddc engines for RV2 Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 071/144] drm/amd/display: Fix dc_create failure handling and 666 color depths Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 072/144] drm/amd/display: Only enable audio if speaker allocation exists Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 073/144] drm/amd/display: Increase size of audios array Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 074/144] iscsi_ibft: make ISCSI_IBFT dependson ACPI instead of ISCSI_IBFT_FIND Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 075/144] nl80211: fix NL80211_HE_MAX_CAPABILITY_LEN Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 076/144] mac80211: fix possible memory leak in ieee80211_assign_beacon Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 077/144] mac80211: dont warn about CW params when not using them Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 078/144] allocate_flower_entry: should check for null deref Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 079/144] hwmon: (occ) Fix division by zero issue Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 080/144] hwmon: (nct6775) Fix register address and added missed tolerance for nct6106 Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 081/144] ARM: dts: imx6ul: fix clock frequency property name of I2C buses Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 082/144] powerpc/papr_scm: Force a scm-unbind if initial scm-bind fails Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 083/144] arm64: Force SSBS on context switch Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 084/144] arm64: entry: SP Alignment Fault doesnt write to FAR_EL1 Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 085/144] iommu/vt-d: Check if domain->pgd was allocated Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 086/144] drm/msm/dpu: Correct dpu encoder spinlock initialization Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 087/144] drm: silence variable conn set but not used Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 088/144] arm64: dts: imx8mm: Correct SAI3 RXC/TXFS pins mux option #1 Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 089/144] arm64: dts: imx8mq: fix SAI compatible Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 090/144] cpufreq/pasemi: fix use-after-free in pas_cpufreq_cpu_init() Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 091/144] s390/qdio: add sanity checks to the fast-requeue path Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 092/144] ALSA: compress: Fix regression on compressed capture streams Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 093/144] ALSA: compress: Prevent bypasses of set_params Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 094/144] ALSA: compress: Dont allow paritial drain operations on capture streams Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 095/144] ALSA: compress: Be more restrictive about when a drain is allowed Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 096/144] perf script: Fix off by one in brstackinsn IPC computation Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 097/144] perf tools: Fix proper buffer size for feature processing Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 098/144] perf stat: Fix segfault for event group in repeat mode Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 099/144] perf session: Fix loading of compressed data split across adjacent records Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 100/144] perf probe: Avoid calling freeing routine multiple times for same pointer Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 101/144] drbd: dynamically allocate shash descriptor Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 102/144] ACPI/IORT: Fix off-by-one check in iort_dev_find_its_id() Greg Kroah-Hartman
2019-08-14 17:00 ` [PATCH 5.2 103/144] nvme: ignore subnqn for ADATA SX6000LNP Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 104/144] nvme: fix memory leak caused by incorrect subsystem free Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 105/144] ARM: davinci: fix sleep.S build error on ARMv4 Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 106/144] ARM: dts: bcm: bcm47094: add missing #cells for mdio-bus-mux Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 107/144] scsi: megaraid_sas: fix panic on loading firmware crashdump Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 108/144] scsi: ibmvfc: fix WARN_ON during event pool release Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 109/144] scsi: scsi_dh_alua: always use a 2 second delay before retrying RTPG Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 110/144] test_firmware: fix a memory leak bug Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 111/144] tty/ldsem, locking/rwsem: Add missing ACQUIRE to read_failed sleep loop Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 112/144] perf/x86/intel: Fix SLOTS PEBS event constraint Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 113/144] perf/x86/intel: Fix invalid Bit 13 for Icelake MSR_OFFCORE_RSP_x register Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 114/144] perf/x86: Apply more accurate check on hypervisor platform Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 115/144] perf/core: Fix creating kernel counters for PMUs that override event->cpu Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 116/144] s390/dma: provide proper ARCH_ZONE_DMA_BITS value Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 117/144] gen_compile_commands: lower the entry count threshold Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 118/144] HID: sony: Fix race condition between rumble and device remove Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 119/144] ALSA: usb-audio: fix a memory leak bug Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 120/144] KVM/nSVM: properly map nested VMCB Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 121/144] can: peak_usb: pcan_usb_pro: Fix info-leaks to USB devices Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 122/144] can: peak_usb: pcan_usb_fd: " Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 123/144] hwmon: (nct7802) Fix wrong detection of in4 presence Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 124/144] hwmon: (lm75) Fixup tmp75b clr_mask Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 125/144] drm/i915: Fix wrong escape clock divisor init for GLK Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 126/144] ALSA: firewire: fix a memory leak bug Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 127/144] ALSA: hiface: fix multiple memory leak bugs Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 128/144] ALSA: hda - Dont override global PCM hw info flag Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 129/144] ALSA: hda - Workaround for crackled sound on AMD controller (1022:1457) Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 130/144] mac80211: dont WARN on short WMM parameters from AP Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 131/144] dax: dax_layout_busy_page() should not unmap cow pages Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 132/144] SMB3: Fix deadlock in validate negotiate hits reconnect Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 133/144] smb3: send CAP_DFS capability during session setup Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 134/144] NFSv4: Fix delegation state recovery Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 135/144] NFSv4: Check the return value of update_open_stateid() Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 136/144] NFSv4: Fix an Oops in nfs4_do_setattr Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 137/144] KVM: Fix leak vCPUs VMCS value into other pCPU Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 138/144] KVM: arm/arm64: Sync ICH_VMCR_EL2 back when about to block Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 139/144] mwifiex: fix 802.11n/WPA detection Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 140/144] iwlwifi: dont unmap as page memory that was mapped as single Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 141/144] iwlwifi: mvm: fix an out-of-bound access Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 142/144] iwlwifi: mvm: fix a use-after-free bug in iwl_mvm_tx_tso_segment Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 143/144] iwlwifi: mvm: dont send GEO_TX_POWER_LIMIT on version < 41 Greg Kroah-Hartman
2019-08-14 17:01 ` [PATCH 5.2 144/144] iwlwifi: mvm: fix version check for GEO_TX_POWER_LIMIT support Greg Kroah-Hartman
2019-08-14 23:16 ` [PATCH 5.2 000/144] 5.2.9-stable review kernelci.org bot
2019-08-15  1:34 ` Naresh Kamboju
2019-08-15  7:19   ` Greg Kroah-Hartman
2019-08-15 15:18 ` Guenter Roeck
2019-08-15 19:37   ` Greg Kroah-Hartman
2019-08-16  2:07 ` shuah
2019-08-16  6:39 ` Kelsey Skunberg
2019-08-16  7:15   ` Greg Kroah-Hartman
2019-08-16  9:21 ` Thierry Reding
2019-08-16  9:40   ` 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=20190814165801.373631307@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=agruenba@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rpeterso@redhat.com \
    --cc=stable@vger.kernel.org \
    /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).