All of lore.kernel.org
 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,
	"Maarten Lankhorst" <maarten.lankhorst@linux.intel.com>,
	"Manasi Navare" <manasi.d.navare@intel.com>,
	"Ville Syrjälä" <ville.syrjala@linux.intel.com>,
	"Rodrigo Vivi" <rodrigo.vivi@intel.com>
Subject: [PATCH 5.3 062/148] drm/i915/dp: Fix dsc bpp calculations, v5.
Date: Thu, 10 Oct 2019 10:35:23 +0200	[thread overview]
Message-ID: <20191010083614.987696114@linuxfoundation.org> (raw)
In-Reply-To: <20191010083609.660878383@linuxfoundation.org>

From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>

commit cffb4c3ea37248c4fc2f4ce747e5c24af88aec76 upstream.

There was a integer wraparound when mode_clock became too high,
and we didn't correct for the FEC overhead factor when dividing,
with the calculations breaking at HBR3.

As a result our calculated bpp was way too high, and the link width
limitation never came into effect.

Print out the resulting bpp calcululations as a sanity check, just
in case we ever have to debug it later on again.

We also used the wrong factor for FEC. While bspec mentions 2.4%,
all the calculations use 1/0.972261, and the same ratio should be
applied to data M/N as well, so use it there when FEC is enabled.

This fixes the FIFO underrun we are seeing with FEC enabled.

Changes since v2:
- Handle fec_enable in intel_link_compute_m_n, so only data M/N is adjusted. (Ville)
- Fix initial hardware readout for FEC. (Ville)
Changes since v3:
- Remove bogus fec_to_mode_clock. (Ville)
Changes since v4:
- Use the correct register for icl. (Ville)
- Split hw readout to a separate patch.

Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Fixes: d9218c8f6cf4 ("drm/i915/dp: Add helpers for Compressed BPP and Slice Count for DSC")
Cc: <stable@vger.kernel.org> # v5.0+
Cc: Manasi Navare <manasi.d.navare@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190925082110.17439-1-maarten.lankhorst@linux.intel.com
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
(cherry picked from commit ed06efb801bd291e935238d3fba46fa03d098f0e)
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/gpu/drm/i915/display/intel_display.c |   12 +
 drivers/gpu/drm/i915/display/intel_display.h |    2 
 drivers/gpu/drm/i915/display/intel_dp.c      |  184 +++++++++++++--------------
 drivers/gpu/drm/i915/display/intel_dp.h      |    6 
 drivers/gpu/drm/i915/display/intel_dp_mst.c  |    2 
 5 files changed, 107 insertions(+), 99 deletions(-)

--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -7132,7 +7132,7 @@ retry:
 	pipe_config->fdi_lanes = lane;
 
 	intel_link_compute_m_n(pipe_config->pipe_bpp, lane, fdi_dotclock,
-			       link_bw, &pipe_config->fdi_m_n, false);
+			       link_bw, &pipe_config->fdi_m_n, false, false);
 
 	ret = ironlake_check_fdi_lanes(dev, intel_crtc->pipe, pipe_config);
 	if (ret == -EDEADLK)
@@ -7379,11 +7379,15 @@ void
 intel_link_compute_m_n(u16 bits_per_pixel, int nlanes,
 		       int pixel_clock, int link_clock,
 		       struct intel_link_m_n *m_n,
-		       bool constant_n)
+		       bool constant_n, bool fec_enable)
 {
-	m_n->tu = 64;
+	u32 data_clock = bits_per_pixel * pixel_clock;
+
+	if (fec_enable)
+		data_clock = intel_dp_mode_to_fec_clock(data_clock);
 
-	compute_m_n(bits_per_pixel * pixel_clock,
+	m_n->tu = 64;
+	compute_m_n(data_clock,
 		    link_clock * nlanes * 8,
 		    &m_n->gmch_m, &m_n->gmch_n,
 		    constant_n);
--- a/drivers/gpu/drm/i915/display/intel_display.h
+++ b/drivers/gpu/drm/i915/display/intel_display.h
@@ -351,7 +351,7 @@ struct intel_link_m_n {
 void intel_link_compute_m_n(u16 bpp, int nlanes,
 			    int pixel_clock, int link_clock,
 			    struct intel_link_m_n *m_n,
-			    bool constant_n);
+			    bool constant_n, bool fec_enable);
 bool is_ccs_modifier(u64 modifier);
 void lpt_disable_clkout_dp(struct drm_i915_private *dev_priv);
 u32 intel_plane_fb_max_stride(struct drm_i915_private *dev_priv,
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -76,8 +76,8 @@
 #define DP_DSC_MAX_ENC_THROUGHPUT_0		340000
 #define DP_DSC_MAX_ENC_THROUGHPUT_1		400000
 
-/* DP DSC FEC Overhead factor = (100 - 2.4)/100 */
-#define DP_DSC_FEC_OVERHEAD_FACTOR		976
+/* DP DSC FEC Overhead factor = 1/(0.972261) */
+#define DP_DSC_FEC_OVERHEAD_FACTOR		972261
 
 /* Compliance test status bits  */
 #define INTEL_DP_RESOLUTION_SHIFT_MASK	0
@@ -526,6 +526,97 @@ int intel_dp_get_link_train_fallback_val
 	return 0;
 }
 
+u32 intel_dp_mode_to_fec_clock(u32 mode_clock)
+{
+	return div_u64(mul_u32_u32(mode_clock, 1000000U),
+		       DP_DSC_FEC_OVERHEAD_FACTOR);
+}
+
+static u16 intel_dp_dsc_get_output_bpp(u32 link_clock, u32 lane_count,
+				       u32 mode_clock, u32 mode_hdisplay)
+{
+	u32 bits_per_pixel, max_bpp_small_joiner_ram;
+	int i;
+
+	/*
+	 * Available Link Bandwidth(Kbits/sec) = (NumberOfLanes)*
+	 * (LinkSymbolClock)* 8 * (TimeSlotsPerMTP)
+	 * for SST -> TimeSlotsPerMTP is 1,
+	 * for MST -> TimeSlotsPerMTP has to be calculated
+	 */
+	bits_per_pixel = (link_clock * lane_count * 8) /
+			 intel_dp_mode_to_fec_clock(mode_clock);
+	DRM_DEBUG_KMS("Max link bpp: %u\n", bits_per_pixel);
+
+	/* Small Joiner Check: output bpp <= joiner RAM (bits) / Horiz. width */
+	max_bpp_small_joiner_ram = DP_DSC_MAX_SMALL_JOINER_RAM_BUFFER / mode_hdisplay;
+	DRM_DEBUG_KMS("Max small joiner bpp: %u\n", max_bpp_small_joiner_ram);
+
+	/*
+	 * Greatest allowed DSC BPP = MIN (output BPP from available Link BW
+	 * check, output bpp from small joiner RAM check)
+	 */
+	bits_per_pixel = min(bits_per_pixel, max_bpp_small_joiner_ram);
+
+	/* Error out if the max bpp is less than smallest allowed valid bpp */
+	if (bits_per_pixel < valid_dsc_bpp[0]) {
+		DRM_DEBUG_KMS("Unsupported BPP %u, min %u\n",
+			      bits_per_pixel, valid_dsc_bpp[0]);
+		return 0;
+	}
+
+	/* Find the nearest match in the array of known BPPs from VESA */
+	for (i = 0; i < ARRAY_SIZE(valid_dsc_bpp) - 1; i++) {
+		if (bits_per_pixel < valid_dsc_bpp[i + 1])
+			break;
+	}
+	bits_per_pixel = valid_dsc_bpp[i];
+
+	/*
+	 * Compressed BPP in U6.4 format so multiply by 16, for Gen 11,
+	 * fractional part is 0
+	 */
+	return bits_per_pixel << 4;
+}
+
+static u8 intel_dp_dsc_get_slice_count(struct intel_dp *intel_dp,
+				       int mode_clock, int mode_hdisplay)
+{
+	u8 min_slice_count, i;
+	int max_slice_width;
+
+	if (mode_clock <= DP_DSC_PEAK_PIXEL_RATE)
+		min_slice_count = DIV_ROUND_UP(mode_clock,
+					       DP_DSC_MAX_ENC_THROUGHPUT_0);
+	else
+		min_slice_count = DIV_ROUND_UP(mode_clock,
+					       DP_DSC_MAX_ENC_THROUGHPUT_1);
+
+	max_slice_width = drm_dp_dsc_sink_max_slice_width(intel_dp->dsc_dpcd);
+	if (max_slice_width < DP_DSC_MIN_SLICE_WIDTH_VALUE) {
+		DRM_DEBUG_KMS("Unsupported slice width %d by DP DSC Sink device\n",
+			      max_slice_width);
+		return 0;
+	}
+	/* Also take into account max slice width */
+	min_slice_count = min_t(u8, min_slice_count,
+				DIV_ROUND_UP(mode_hdisplay,
+					     max_slice_width));
+
+	/* Find the closest match to the valid slice count values */
+	for (i = 0; i < ARRAY_SIZE(valid_dsc_slicecount); i++) {
+		if (valid_dsc_slicecount[i] >
+		    drm_dp_dsc_sink_max_slice_count(intel_dp->dsc_dpcd,
+						    false))
+			break;
+		if (min_slice_count  <= valid_dsc_slicecount[i])
+			return valid_dsc_slicecount[i];
+	}
+
+	DRM_DEBUG_KMS("Unsupported Slice Count %d\n", min_slice_count);
+	return 0;
+}
+
 static enum drm_mode_status
 intel_dp_mode_valid(struct drm_connector *connector,
 		    struct drm_display_mode *mode)
@@ -2248,7 +2339,7 @@ intel_dp_compute_config(struct intel_enc
 			       adjusted_mode->crtc_clock,
 			       pipe_config->port_clock,
 			       &pipe_config->dp_m_n,
-			       constant_n);
+			       constant_n, pipe_config->fec_enable);
 
 	if (intel_connector->panel.downclock_mode != NULL &&
 		dev_priv->drrs.type == SEAMLESS_DRRS_SUPPORT) {
@@ -2258,7 +2349,7 @@ intel_dp_compute_config(struct intel_enc
 					       intel_connector->panel.downclock_mode->clock,
 					       pipe_config->port_clock,
 					       &pipe_config->dp_m2_n2,
-					       constant_n);
+					       constant_n, pipe_config->fec_enable);
 	}
 
 	if (!HAS_DDI(dev_priv))
@@ -4345,91 +4436,6 @@ intel_dp_get_sink_irq_esi(struct intel_d
 		DP_DPRX_ESI_LEN;
 }
 
-u16 intel_dp_dsc_get_output_bpp(int link_clock, u8 lane_count,
-				int mode_clock, int mode_hdisplay)
-{
-	u16 bits_per_pixel, max_bpp_small_joiner_ram;
-	int i;
-
-	/*
-	 * Available Link Bandwidth(Kbits/sec) = (NumberOfLanes)*
-	 * (LinkSymbolClock)* 8 * ((100-FECOverhead)/100)*(TimeSlotsPerMTP)
-	 * FECOverhead = 2.4%, for SST -> TimeSlotsPerMTP is 1,
-	 * for MST -> TimeSlotsPerMTP has to be calculated
-	 */
-	bits_per_pixel = (link_clock * lane_count * 8 *
-			  DP_DSC_FEC_OVERHEAD_FACTOR) /
-		mode_clock;
-
-	/* Small Joiner Check: output bpp <= joiner RAM (bits) / Horiz. width */
-	max_bpp_small_joiner_ram = DP_DSC_MAX_SMALL_JOINER_RAM_BUFFER /
-		mode_hdisplay;
-
-	/*
-	 * Greatest allowed DSC BPP = MIN (output BPP from avaialble Link BW
-	 * check, output bpp from small joiner RAM check)
-	 */
-	bits_per_pixel = min(bits_per_pixel, max_bpp_small_joiner_ram);
-
-	/* Error out if the max bpp is less than smallest allowed valid bpp */
-	if (bits_per_pixel < valid_dsc_bpp[0]) {
-		DRM_DEBUG_KMS("Unsupported BPP %d\n", bits_per_pixel);
-		return 0;
-	}
-
-	/* Find the nearest match in the array of known BPPs from VESA */
-	for (i = 0; i < ARRAY_SIZE(valid_dsc_bpp) - 1; i++) {
-		if (bits_per_pixel < valid_dsc_bpp[i + 1])
-			break;
-	}
-	bits_per_pixel = valid_dsc_bpp[i];
-
-	/*
-	 * Compressed BPP in U6.4 format so multiply by 16, for Gen 11,
-	 * fractional part is 0
-	 */
-	return bits_per_pixel << 4;
-}
-
-u8 intel_dp_dsc_get_slice_count(struct intel_dp *intel_dp,
-				int mode_clock,
-				int mode_hdisplay)
-{
-	u8 min_slice_count, i;
-	int max_slice_width;
-
-	if (mode_clock <= DP_DSC_PEAK_PIXEL_RATE)
-		min_slice_count = DIV_ROUND_UP(mode_clock,
-					       DP_DSC_MAX_ENC_THROUGHPUT_0);
-	else
-		min_slice_count = DIV_ROUND_UP(mode_clock,
-					       DP_DSC_MAX_ENC_THROUGHPUT_1);
-
-	max_slice_width = drm_dp_dsc_sink_max_slice_width(intel_dp->dsc_dpcd);
-	if (max_slice_width < DP_DSC_MIN_SLICE_WIDTH_VALUE) {
-		DRM_DEBUG_KMS("Unsupported slice width %d by DP DSC Sink device\n",
-			      max_slice_width);
-		return 0;
-	}
-	/* Also take into account max slice width */
-	min_slice_count = min_t(u8, min_slice_count,
-				DIV_ROUND_UP(mode_hdisplay,
-					     max_slice_width));
-
-	/* Find the closest match to the valid slice count values */
-	for (i = 0; i < ARRAY_SIZE(valid_dsc_slicecount); i++) {
-		if (valid_dsc_slicecount[i] >
-		    drm_dp_dsc_sink_max_slice_count(intel_dp->dsc_dpcd,
-						    false))
-			break;
-		if (min_slice_count  <= valid_dsc_slicecount[i])
-			return valid_dsc_slicecount[i];
-	}
-
-	DRM_DEBUG_KMS("Unsupported Slice Count %d\n", min_slice_count);
-	return 0;
-}
-
 static void
 intel_pixel_encoding_setup_vsc(struct intel_dp *intel_dp,
 			       const struct intel_crtc_state *crtc_state)
--- a/drivers/gpu/drm/i915/display/intel_dp.h
+++ b/drivers/gpu/drm/i915/display/intel_dp.h
@@ -102,10 +102,6 @@ bool intel_dp_source_supports_hbr2(struc
 bool intel_dp_source_supports_hbr3(struct intel_dp *intel_dp);
 bool
 intel_dp_get_link_status(struct intel_dp *intel_dp, u8 *link_status);
-u16 intel_dp_dsc_get_output_bpp(int link_clock, u8 lane_count,
-				int mode_clock, int mode_hdisplay);
-u8 intel_dp_dsc_get_slice_count(struct intel_dp *intel_dp, int mode_clock,
-				int mode_hdisplay);
 
 bool intel_dp_read_dpcd(struct intel_dp *intel_dp);
 bool intel_dp_get_colorimetry_status(struct intel_dp *intel_dp);
@@ -120,4 +116,6 @@ static inline unsigned int intel_dp_unus
 	return ~((1 << lane_count) - 1) & 0xf;
 }
 
+u32 intel_dp_mode_to_fec_clock(u32 mode_clock);
+
 #endif /* __INTEL_DP_H__ */
--- a/drivers/gpu/drm/i915/display/intel_dp_mst.c
+++ b/drivers/gpu/drm/i915/display/intel_dp_mst.c
@@ -81,7 +81,7 @@ static int intel_dp_mst_compute_link_con
 			       adjusted_mode->crtc_clock,
 			       crtc_state->port_clock,
 			       &crtc_state->dp_m_n,
-			       constant_n);
+			       constant_n, crtc_state->fec_enable);
 	crtc_state->dp_m_n.tu = slots;
 
 	return 0;



  parent reply	other threads:[~2019-10-10  8:40 UTC|newest]

Thread overview: 165+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-10  8:34 [PATCH 5.3 000/148] 5.3.6-stable review Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 001/148] s390/process: avoid potential reading of freed stack Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 002/148] s390/sclp: Fix bit checked for has_sipl Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 003/148] KVM: s390: Test for bad access register and size at the start of S390_MEM_OP Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 004/148] s390/topology: avoid firing events before kobjs are created Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 005/148] s390/cio: avoid calling strlen on null pointer Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 006/148] s390/cio: exclude subchannels with no parent from pseudo check Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 007/148] s390/dasd: Fix error handling during online processing Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 008/148] Revert "s390/dasd: Add discard support for ESE volumes" Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 009/148] KVM: s390: fix __insn32_query() inline assembly Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 010/148] KVM: PPC: Book3S: Enable XIVE native capability only if OPAL has required functions Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 011/148] KVM: PPC: Book3S HV: XIVE: Free escalation interrupts before disabling the VP Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 012/148] KVM: PPC: Book3S HV: Dont push XIVE context when not using XIVE device Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 013/148] KVM: PPC: Book3S HV: Fix race in re-enabling XIVE escalation interrupts Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 014/148] KVM: PPC: Book3S HV: Check for MMU ready on piggybacked virtual cores Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 015/148] KVM: PPC: Book3S HV: Dont lose pending doorbell request on migration on P9 Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 016/148] KVM: X86: Fix userspace set invalid CR4 Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 017/148] nbd: fix max number of supported devs Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 018/148] PM / devfreq: tegra: Fix kHz to Hz conversion Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 019/148] ASoC: Define a set of DAPM pre/post-up events Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 020/148] ASoC: sgtl5000: Improve VAG power and mute control Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 021/148] powerpc/xive: Implement get_irqchip_state method for XIVE to fix shutdown race Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 022/148] powerpc/mce: Fix MCE handling for huge pages Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 023/148] powerpc/mce: Schedule work from irq_work Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 024/148] powerpc/603: Fix handling of the DIRTY flag Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 025/148] powerpc/32s: Fix boot failure with DEBUG_PAGEALLOC without KASAN Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 026/148] powerpc/ptdump: Fix addresses display on PPC32 Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 027/148] powerpc/powernv: Restrict OPAL symbol map to only be readable by root Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 028/148] powerpc/pseries: Fix cpu_hotplug_lock acquisition in resize_hpt() Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 029/148] powerpc/powernv/ioda: Fix race in TCE level allocation Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 030/148] powerpc/kasan: Fix parallel loading of modules Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 031/148] powerpc/kasan: Fix shadow area set up for modules Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 032/148] powerpc/book3s64/mm: Dont do tlbie fixup for some hardware revisions Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 033/148] powerpc/book3s64/radix: Rename CPU_FTR_P9_TLBIE_BUG feature flag Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 034/148] powerpc/mm: Add a helper to select PAGE_KERNEL_RO or PAGE_READONLY Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 035/148] powerpc/mm: Fix an Oops in kasan_mmu_init() Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 036/148] powerpc/mm: Fixup tlbie vs mtpidr/mtlpidr ordering issue on POWER9 Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 037/148] can: mcp251x: mcp251x_hw_reset(): allow more time after a reset Greg Kroah-Hartman
2019-10-10  8:34 ` [PATCH 5.3 038/148] tools lib traceevent: Fix "robust" test of do_generate_dynamic_list_file Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 039/148] tools lib traceevent: Do not free tep->cmdlines in add_new_comm() on failure Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 040/148] crypto: qat - Silence smp_processor_id() warning Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 041/148] crypto: skcipher - Unmap pages after an external error Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 042/148] crypto: cavium/zip - Add missing single_release() Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 043/148] crypto: caam/qi - fix error handling in ERN handler Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 044/148] crypto: caam - fix concurrency issue in givencrypt descriptor Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 045/148] crypto: ccree - account for TEE not ready to report Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 046/148] crypto: ccree - use the full crypt length value Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 047/148] MIPS: Treat Loongson Extensions as ASEs Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 048/148] power: supply: sbs-battery: use correct flags field Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 049/148] power: supply: sbs-battery: only return health when battery present Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 050/148] tracing: Make sure variable reference alias has correct var_ref_idx Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 051/148] usercopy: Avoid HIGHMEM pfn warning Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 052/148] timer: Read jiffies once when forwarding base clk Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 053/148] PCI: vmd: Fix config addressing when using bus offsets Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 054/148] PCI: hv: Avoid use of hv_pci_dev->pci_slot after freeing it Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 055/148] PCI: vmd: Fix shadow offsets to reflect spec changes Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 056/148] PCI: Restore Resizable BAR size bits correctly for 1MB BARs Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 057/148] selftests/tpm2: Add the missing TEST_FILES assignment Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 058/148] selftests: pidfd: Fix undefined reference to pthread_create() Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 059/148] watchdog: imx2_wdt: fix min() calculation in imx2_wdt_set_timeout Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 061/148] perf stat: Fix a segmentation fault when using repeat forever Greg Kroah-Hartman
2019-10-10  8:35 ` Greg Kroah-Hartman [this message]
2019-10-10  8:35 ` [PATCH 5.3 063/148] drm/atomic: Reject FLIP_ASYNC unconditionally Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 064/148] drm/atomic: Take the atomic toys away from X Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 065/148] drm: mali-dp: Mark expected switch fall-through Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 066/148] drm/omap: fix max fclk divider for omap36xx Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 067/148] drm/msm/dsi: Fix return value check for clk_get_parent Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 068/148] drm/nouveau/kms/nv50-: Dont create MSTMs for eDP connectors Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 069/148] drm/amd/powerplay: change metrics update period from 1ms to 100ms Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 070/148] drm/i915/gvt: update vgpu workload head pointer correctly Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 071/148] drm/i915/userptr: Acquire the page lock around set_page_dirty() Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 072/148] drm/i915: to make vgpu ppgtt notificaiton as atomic operation Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 073/148] mac80211: keep BHs disabled while calling drv_tx_wake_queue() Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 074/148] mmc: tegra: Implement ->set_dma_mask() Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 075/148] mmc: sdhci: improve ADMA error reporting Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 076/148] mmc: sdhci-of-esdhc: set DMA snooping based on DMA coherence Greg Kroah-Hartman
2019-10-10  8:49   ` Russell King - ARM Linux admin
2019-10-10  9:10     ` Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 077/148] mmc: sdhci: Let drivers define their DMA mask Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 078/148] Revert "locking/pvqspinlock: Dont wait if vCPU is preempted" Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 079/148] libnvdimm/altmap: Track namespace boundaries in altmap Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 080/148] sched: Add __ASSEMBLY__ guards around struct clone_args Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 081/148] DTS: ARM: gta04: introduce legacy spi-cs-high to make display work again Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 082/148] xen/balloon: Set pages PageOffline() in balloon_add_region() Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 083/148] xen/xenbus: fix self-deadlock after killing user process Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 084/148] ieee802154: atusb: fix use-after-free at disconnect Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 085/148] nl80211: validate beacon head Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 086/148] cfg80211: validate SSID/MBSSID element ordering assumption Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 087/148] cfg80211: initialize on-stack chandefs Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 088/148] drivers: thermal: qcom: tsens: Fix memory leak from qfprom read Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 089/148] ima: always return negative code for error Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 090/148] ima: fix freeing ongoing ahash_request Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 091/148] fs: nfs: Fix possible null-pointer dereferences in encode_attrs() Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 092/148] xprtrdma: Toggle XPRT_CONGESTED in xprtrdmas slot methods Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 093/148] xprtrdma: Send Queue size grows after a reconnect Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 094/148] 9p: Transport error uninitialized Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 095/148] 9p: avoid attaching writeback_fid on mmap with type PRIVATE Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 096/148] xen/pci: reserve MCFG areas earlier Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 097/148] fuse: fix request limit Greg Kroah-Hartman
2019-10-10  8:35 ` [PATCH 5.3 098/148] ceph: fix directories inode i_blkbits initialization Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 099/148] ceph: fetch cap_gen under spinlock in ceph_add_cap Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 100/148] ceph: reconnect connection if session hang in opening state Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 101/148] SUNRPC: RPC level errors should always set task->tk_rpc_status Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 102/148] watchdog: aspeed: Add support for AST2600 Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 103/148] netfilter: nf_tables: allow lookups in dynamic sets Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 104/148] drm/amdgpu: Fix KFD-related kernel oops on Hawaii Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 105/148] drm/amdgpu: Check for valid number of registers to read Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 106/148] perf probe: Fix to clear tev->nargs in clear_probe_trace_event() Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 107/148] pNFS: Ensure we do clear the return-on-close layout stateid on fatal errors Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 108/148] SUNRPC: Dont try to parse incomplete RPC messages Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 109/148] pwm: stm32-lp: Add check in case requested period cannot be achieved Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 110/148] selftests/seccomp: fix build on older kernels Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 111/148] x86/purgatory: Disable the stackleak GCC plugin for the purgatory Greg Kroah-Hartman
     [not found]   ` <BYAPR04MB62468F03E52BCE23B5CD1C91AA940@BYAPR04MB6246.namprd04.prod.outlook.com>
2019-10-10 23:32     ` Sasha Levin
2019-10-10  8:36 ` [PATCH 5.3 112/148] ntb: point to right memory window index Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 113/148] thermal: Fix use-after-free when unregistering thermal zone device Greg Kroah-Hartman
2019-11-14 13:17   ` Lukasz Luba
2019-11-14 13:54     ` Ido Schimmel
2019-11-14 15:05     ` Zhang Rui
2019-10-10  8:36 ` [PATCH 5.3 114/148] thermal_hwmon: Sanitize thermal_zone type Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 115/148] iommu/amd: Fix downgrading default page-sizes in alloc_pte() Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 116/148] libnvdimm/region: Initialize bad block for volatile namespaces Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 117/148] libnvdimm: Fix endian conversion issues Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 118/148] fuse: fix memleak in cuse_channel_open Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 119/148] libnvdimm/nfit_test: Fix acpi_handle redefinition Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 120/148] sched/membarrier: Call sync_core only before usermode for same mm Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 121/148] sched/membarrier: Fix private expedited registration check Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 122/148] sched/core: Fix migration to invalid CPU in __set_cpus_allowed_ptr() Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 123/148] perf build: Add detection of java-11-openjdk-devel package Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 124/148] include/trace/events/writeback.h: fix -Wstringop-truncation warnings Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 125/148] selftests/bpf: adjust strobemeta loop to satisfy latest clang Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 126/148] kernel/elfcore.c: include proper prototypes Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 127/148] libbpf: fix false uninitialized variable warning Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 128/148] blk-mq: move lockdep_assert_held() into elevator_exit Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 129/148] bpf: Fix bpf_event_output re-entry issue Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 130/148] net: dsa: microchip: Always set regmap stride to 1 Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 131/148] i2c: qcom-geni: Disable DMA processing on the Lenovo Yoga C630 Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 132/148] perf unwind: Fix libunwind build failure on i386 systems Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 133/148] mlxsw: spectrum_flower: Fail in case user specifies multiple mirror actions Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 134/148] nfp: abm: fix memory leak in nfp_abm_u32_knode_replace Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 135/148] drm/radeon: Bail earlier when radeon.cik_/si_support=0 is passed Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 136/148] Btrfs: fix selftests failure due to uninitialized i_mode in test inodes Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 137/148] KVM: nVMX: Fix consistency check on injected exception error code Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 138/148] tick: broadcast-hrtimer: Fix a race in bc_set_next Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 139/148] perf stat: Reset previous counts on repeat with interval Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 140/148] riscv: Avoid interrupts being erroneously enabled in handle_exception() Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 141/148] vfs: Fix EOVERFLOW testing in put_compat_statfs64 Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 142/148] coresight: etm4x: Use explicit barriers on enable/disable Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 143/148] staging: erofs: fix an error handling in erofs_readdir() Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 144/148] staging: erofs: some compressed cluster should be submitted for corrupted images Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 145/148] staging: erofs: add two missing erofs_workgroup_put " Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 146/148] staging: erofs: avoid endless loop of invalid lookback distance 0 Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 147/148] staging: erofs: detect potential multiref due to corrupted images Greg Kroah-Hartman
2019-10-10  8:36 ` [PATCH 5.3 148/148] libnvdimm: prevent nvdimm from requesting key when security is disabled Greg Kroah-Hartman
2019-10-10 14:41 ` [PATCH 5.3 000/148] 5.3.6-stable review kernelci.org bot
2019-10-10 17:09 ` Naresh Kamboju
2019-10-11  6:48   ` Greg Kroah-Hartman
2019-10-10 20:59 ` Didik Setiawan
2019-10-10 22:19 ` Guenter Roeck
2019-10-11  6:49   ` Greg Kroah-Hartman
2019-10-11  3:02 ` shuah
2019-10-11  6:47   ` Greg Kroah-Hartman
2019-10-11  8:33 ` Jon Hunter
2019-10-11  8:33   ` Jon Hunter
2019-10-11  8:58   ` 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=20191010083614.987696114@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maarten.lankhorst@linux.intel.com \
    --cc=manasi.d.navare@intel.com \
    --cc=rodrigo.vivi@intel.com \
    --cc=stable@vger.kernel.org \
    --cc=ville.syrjala@linux.intel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.