All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Anthony Koo <Anthony.Koo@amd.com>, Aric Cyr <Aric.Cyr@amd.com>,
	Qingqing Zhuo <qingqing.zhuo@amd.com>,
	Alex Deucher <alexander.deucher@amd.com>,
	Sasha Levin <sashal@kernel.org>,
	amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org
Subject: [PATCH AUTOSEL 5.7 18/54] drm/amd/display: Fix LFC multiplier changing erratically
Date: Mon, 24 Aug 2020 12:35:57 -0400	[thread overview]
Message-ID: <20200824163634.606093-18-sashal@kernel.org> (raw)
In-Reply-To: <20200824163634.606093-1-sashal@kernel.org>

From: Anthony Koo <Anthony.Koo@amd.com>

[ Upstream commit e4ed4dbbc8383d42a197da8fe7ca6434b0f14def ]

[Why]
1. There is a calculation that is using frame_time_in_us instead of
last_render_time_in_us to calculate whether choosing an LFC multiplier
would cause the inserted frame duration to be outside of range.

2. We do not handle unsigned integer subtraction correctly and it underflows
to a really large value, which causes some logic errors.

[How]
1. Fix logic to calculate 'within range' using last_render_time_in_us
2. Split out delta_from_mid_point_delta_in_us calculation to ensure
we don't underflow and wrap around

Signed-off-by: Anthony Koo <Anthony.Koo@amd.com>
Reviewed-by: Aric Cyr <Aric.Cyr@amd.com>
Acked-by: Qingqing Zhuo <qingqing.zhuo@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 .../amd/display/modules/freesync/freesync.c   | 36 +++++++++++++++----
 1 file changed, 29 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/modules/freesync/freesync.c b/drivers/gpu/drm/amd/display/modules/freesync/freesync.c
index c33454a9e0b4d..85dcb3b078df7 100644
--- a/drivers/gpu/drm/amd/display/modules/freesync/freesync.c
+++ b/drivers/gpu/drm/amd/display/modules/freesync/freesync.c
@@ -324,22 +324,44 @@ static void apply_below_the_range(struct core_freesync *core_freesync,
 
 		/* Choose number of frames to insert based on how close it
 		 * can get to the mid point of the variable range.
+		 *  - Delta for CEIL: delta_from_mid_point_in_us_1
+		 *  - Delta for FLOOR: delta_from_mid_point_in_us_2
 		 */
-		if ((frame_time_in_us / mid_point_frames_ceil) > in_out_vrr->min_duration_in_us &&
-				(delta_from_mid_point_in_us_1 < delta_from_mid_point_in_us_2 ||
-						mid_point_frames_floor < 2)) {
+		if ((last_render_time_in_us / mid_point_frames_ceil) < in_out_vrr->min_duration_in_us) {
+			/* Check for out of range.
+			 * If using CEIL produces a value that is out of range,
+			 * then we are forced to use FLOOR.
+			 */
+			frames_to_insert = mid_point_frames_floor;
+		} else if (mid_point_frames_floor < 2) {
+			/* Check if FLOOR would result in non-LFC. In this case
+			 * choose to use CEIL
+			 */
+			frames_to_insert = mid_point_frames_ceil;
+		} else if (delta_from_mid_point_in_us_1 < delta_from_mid_point_in_us_2) {
+			/* If choosing CEIL results in a frame duration that is
+			 * closer to the mid point of the range.
+			 * Choose CEIL
+			 */
 			frames_to_insert = mid_point_frames_ceil;
-			delta_from_mid_point_delta_in_us = delta_from_mid_point_in_us_2 -
-					delta_from_mid_point_in_us_1;
 		} else {
+			/* If choosing FLOOR results in a frame duration that is
+			 * closer to the mid point of the range.
+			 * Choose FLOOR
+			 */
 			frames_to_insert = mid_point_frames_floor;
-			delta_from_mid_point_delta_in_us = delta_from_mid_point_in_us_1 -
-					delta_from_mid_point_in_us_2;
 		}
 
 		/* Prefer current frame multiplier when BTR is enabled unless it drifts
 		 * too far from the midpoint
 		 */
+		if (delta_from_mid_point_in_us_1 < delta_from_mid_point_in_us_2) {
+			delta_from_mid_point_delta_in_us = delta_from_mid_point_in_us_2 -
+					delta_from_mid_point_in_us_1;
+		} else {
+			delta_from_mid_point_delta_in_us = delta_from_mid_point_in_us_1 -
+					delta_from_mid_point_in_us_2;
+		}
 		if (in_out_vrr->btr.frames_to_insert != 0 &&
 				delta_from_mid_point_delta_in_us < BTR_DRIFT_MARGIN) {
 			if (((last_render_time_in_us / in_out_vrr->btr.frames_to_insert) <
-- 
2.25.1


WARNING: multiple messages have this Message-ID (diff)
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Sasha Levin <sashal@kernel.org>,
	Qingqing Zhuo <qingqing.zhuo@amd.com>,
	amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org,
	Alex Deucher <alexander.deucher@amd.com>,
	Anthony Koo <Anthony.Koo@amd.com>
Subject: [PATCH AUTOSEL 5.7 18/54] drm/amd/display: Fix LFC multiplier changing erratically
Date: Mon, 24 Aug 2020 12:35:57 -0400	[thread overview]
Message-ID: <20200824163634.606093-18-sashal@kernel.org> (raw)
In-Reply-To: <20200824163634.606093-1-sashal@kernel.org>

From: Anthony Koo <Anthony.Koo@amd.com>

[ Upstream commit e4ed4dbbc8383d42a197da8fe7ca6434b0f14def ]

[Why]
1. There is a calculation that is using frame_time_in_us instead of
last_render_time_in_us to calculate whether choosing an LFC multiplier
would cause the inserted frame duration to be outside of range.

2. We do not handle unsigned integer subtraction correctly and it underflows
to a really large value, which causes some logic errors.

[How]
1. Fix logic to calculate 'within range' using last_render_time_in_us
2. Split out delta_from_mid_point_delta_in_us calculation to ensure
we don't underflow and wrap around

Signed-off-by: Anthony Koo <Anthony.Koo@amd.com>
Reviewed-by: Aric Cyr <Aric.Cyr@amd.com>
Acked-by: Qingqing Zhuo <qingqing.zhuo@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 .../amd/display/modules/freesync/freesync.c   | 36 +++++++++++++++----
 1 file changed, 29 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/modules/freesync/freesync.c b/drivers/gpu/drm/amd/display/modules/freesync/freesync.c
index c33454a9e0b4d..85dcb3b078df7 100644
--- a/drivers/gpu/drm/amd/display/modules/freesync/freesync.c
+++ b/drivers/gpu/drm/amd/display/modules/freesync/freesync.c
@@ -324,22 +324,44 @@ static void apply_below_the_range(struct core_freesync *core_freesync,
 
 		/* Choose number of frames to insert based on how close it
 		 * can get to the mid point of the variable range.
+		 *  - Delta for CEIL: delta_from_mid_point_in_us_1
+		 *  - Delta for FLOOR: delta_from_mid_point_in_us_2
 		 */
-		if ((frame_time_in_us / mid_point_frames_ceil) > in_out_vrr->min_duration_in_us &&
-				(delta_from_mid_point_in_us_1 < delta_from_mid_point_in_us_2 ||
-						mid_point_frames_floor < 2)) {
+		if ((last_render_time_in_us / mid_point_frames_ceil) < in_out_vrr->min_duration_in_us) {
+			/* Check for out of range.
+			 * If using CEIL produces a value that is out of range,
+			 * then we are forced to use FLOOR.
+			 */
+			frames_to_insert = mid_point_frames_floor;
+		} else if (mid_point_frames_floor < 2) {
+			/* Check if FLOOR would result in non-LFC. In this case
+			 * choose to use CEIL
+			 */
+			frames_to_insert = mid_point_frames_ceil;
+		} else if (delta_from_mid_point_in_us_1 < delta_from_mid_point_in_us_2) {
+			/* If choosing CEIL results in a frame duration that is
+			 * closer to the mid point of the range.
+			 * Choose CEIL
+			 */
 			frames_to_insert = mid_point_frames_ceil;
-			delta_from_mid_point_delta_in_us = delta_from_mid_point_in_us_2 -
-					delta_from_mid_point_in_us_1;
 		} else {
+			/* If choosing FLOOR results in a frame duration that is
+			 * closer to the mid point of the range.
+			 * Choose FLOOR
+			 */
 			frames_to_insert = mid_point_frames_floor;
-			delta_from_mid_point_delta_in_us = delta_from_mid_point_in_us_1 -
-					delta_from_mid_point_in_us_2;
 		}
 
 		/* Prefer current frame multiplier when BTR is enabled unless it drifts
 		 * too far from the midpoint
 		 */
+		if (delta_from_mid_point_in_us_1 < delta_from_mid_point_in_us_2) {
+			delta_from_mid_point_delta_in_us = delta_from_mid_point_in_us_2 -
+					delta_from_mid_point_in_us_1;
+		} else {
+			delta_from_mid_point_delta_in_us = delta_from_mid_point_in_us_1 -
+					delta_from_mid_point_in_us_2;
+		}
 		if (in_out_vrr->btr.frames_to_insert != 0 &&
 				delta_from_mid_point_delta_in_us < BTR_DRIFT_MARGIN) {
 			if (((last_render_time_in_us / in_out_vrr->btr.frames_to_insert) <
-- 
2.25.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

WARNING: multiple messages have this Message-ID (diff)
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Sasha Levin <sashal@kernel.org>, Aric Cyr <Aric.Cyr@amd.com>,
	Qingqing Zhuo <qingqing.zhuo@amd.com>,
	amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org,
	Alex Deucher <alexander.deucher@amd.com>,
	Anthony Koo <Anthony.Koo@amd.com>
Subject: [PATCH AUTOSEL 5.7 18/54] drm/amd/display: Fix LFC multiplier changing erratically
Date: Mon, 24 Aug 2020 12:35:57 -0400	[thread overview]
Message-ID: <20200824163634.606093-18-sashal@kernel.org> (raw)
In-Reply-To: <20200824163634.606093-1-sashal@kernel.org>

From: Anthony Koo <Anthony.Koo@amd.com>

[ Upstream commit e4ed4dbbc8383d42a197da8fe7ca6434b0f14def ]

[Why]
1. There is a calculation that is using frame_time_in_us instead of
last_render_time_in_us to calculate whether choosing an LFC multiplier
would cause the inserted frame duration to be outside of range.

2. We do not handle unsigned integer subtraction correctly and it underflows
to a really large value, which causes some logic errors.

[How]
1. Fix logic to calculate 'within range' using last_render_time_in_us
2. Split out delta_from_mid_point_delta_in_us calculation to ensure
we don't underflow and wrap around

Signed-off-by: Anthony Koo <Anthony.Koo@amd.com>
Reviewed-by: Aric Cyr <Aric.Cyr@amd.com>
Acked-by: Qingqing Zhuo <qingqing.zhuo@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 .../amd/display/modules/freesync/freesync.c   | 36 +++++++++++++++----
 1 file changed, 29 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/modules/freesync/freesync.c b/drivers/gpu/drm/amd/display/modules/freesync/freesync.c
index c33454a9e0b4d..85dcb3b078df7 100644
--- a/drivers/gpu/drm/amd/display/modules/freesync/freesync.c
+++ b/drivers/gpu/drm/amd/display/modules/freesync/freesync.c
@@ -324,22 +324,44 @@ static void apply_below_the_range(struct core_freesync *core_freesync,
 
 		/* Choose number of frames to insert based on how close it
 		 * can get to the mid point of the variable range.
+		 *  - Delta for CEIL: delta_from_mid_point_in_us_1
+		 *  - Delta for FLOOR: delta_from_mid_point_in_us_2
 		 */
-		if ((frame_time_in_us / mid_point_frames_ceil) > in_out_vrr->min_duration_in_us &&
-				(delta_from_mid_point_in_us_1 < delta_from_mid_point_in_us_2 ||
-						mid_point_frames_floor < 2)) {
+		if ((last_render_time_in_us / mid_point_frames_ceil) < in_out_vrr->min_duration_in_us) {
+			/* Check for out of range.
+			 * If using CEIL produces a value that is out of range,
+			 * then we are forced to use FLOOR.
+			 */
+			frames_to_insert = mid_point_frames_floor;
+		} else if (mid_point_frames_floor < 2) {
+			/* Check if FLOOR would result in non-LFC. In this case
+			 * choose to use CEIL
+			 */
+			frames_to_insert = mid_point_frames_ceil;
+		} else if (delta_from_mid_point_in_us_1 < delta_from_mid_point_in_us_2) {
+			/* If choosing CEIL results in a frame duration that is
+			 * closer to the mid point of the range.
+			 * Choose CEIL
+			 */
 			frames_to_insert = mid_point_frames_ceil;
-			delta_from_mid_point_delta_in_us = delta_from_mid_point_in_us_2 -
-					delta_from_mid_point_in_us_1;
 		} else {
+			/* If choosing FLOOR results in a frame duration that is
+			 * closer to the mid point of the range.
+			 * Choose FLOOR
+			 */
 			frames_to_insert = mid_point_frames_floor;
-			delta_from_mid_point_delta_in_us = delta_from_mid_point_in_us_1 -
-					delta_from_mid_point_in_us_2;
 		}
 
 		/* Prefer current frame multiplier when BTR is enabled unless it drifts
 		 * too far from the midpoint
 		 */
+		if (delta_from_mid_point_in_us_1 < delta_from_mid_point_in_us_2) {
+			delta_from_mid_point_delta_in_us = delta_from_mid_point_in_us_2 -
+					delta_from_mid_point_in_us_1;
+		} else {
+			delta_from_mid_point_delta_in_us = delta_from_mid_point_in_us_1 -
+					delta_from_mid_point_in_us_2;
+		}
 		if (in_out_vrr->btr.frames_to_insert != 0 &&
 				delta_from_mid_point_delta_in_us < BTR_DRIFT_MARGIN) {
 			if (((last_render_time_in_us / in_out_vrr->btr.frames_to_insert) <
-- 
2.25.1

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

  parent reply	other threads:[~2020-08-24 17:13 UTC|newest]

Thread overview: 95+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-08-24 16:35 [PATCH AUTOSEL 5.7 01/54] spi: stm32: clear only asserted irq flags on interrupt Sasha Levin
2020-08-24 16:35 ` Sasha Levin
2020-08-24 16:35 ` [PATCH AUTOSEL 5.7 02/54] jbd2: make sure jh have b_transaction set in refile/unfile_buffer Sasha Levin
2020-08-24 16:35 ` [PATCH AUTOSEL 5.7 03/54] ext4: don't BUG on inconsistent journal feature Sasha Levin
2020-08-24 16:35 ` [PATCH AUTOSEL 5.7 04/54] ext4: handle read only external journal device Sasha Levin
2020-08-24 16:35 ` [PATCH AUTOSEL 5.7 05/54] drm/virtio: fix memory leak in virtio_gpu_cleanup_object() Sasha Levin
2020-08-24 16:35   ` Sasha Levin
2020-08-24 16:35   ` Sasha Levin
2020-08-24 16:35 ` [PATCH AUTOSEL 5.7 06/54] ext4: abort the filesystem if failed to async write metadata buffer Sasha Levin
2020-08-24 16:35 ` [PATCH AUTOSEL 5.7 07/54] jbd2: abort journal if free a async write error " Sasha Levin
2020-08-24 16:35 ` [PATCH AUTOSEL 5.7 08/54] ext4: handle option set by mount flags correctly Sasha Levin
2020-08-24 16:35 ` [PATCH AUTOSEL 5.7 09/54] ext4: handle error of ext4_setup_system_zone() on remount Sasha Levin
2020-08-24 16:35 ` [PATCH AUTOSEL 5.7 10/54] ext4: correctly restore system zone info when remount fails Sasha Levin
2020-08-24 16:35 ` [PATCH AUTOSEL 5.7 11/54] fs: prevent BUG_ON in submit_bh_wbc() Sasha Levin
2020-08-24 16:35 ` [PATCH AUTOSEL 5.7 12/54] spi: stm32h7: fix race condition at end of transfer Sasha Levin
2020-08-24 16:35   ` Sasha Levin
2020-08-24 16:35 ` [PATCH AUTOSEL 5.7 13/54] spi: stm32: fix fifo threshold level in case of short transfer Sasha Levin
2020-08-24 16:35   ` Sasha Levin
2020-08-24 16:35 ` [PATCH AUTOSEL 5.7 14/54] spi: stm32: fix stm32_spi_prepare_mbr in case of odd clk_rate Sasha Levin
2020-08-24 16:35   ` Sasha Levin
2020-08-24 16:35 ` [PATCH AUTOSEL 5.7 15/54] spi: stm32: always perform registers configuration prior to transfer Sasha Levin
2020-08-24 16:35   ` Sasha Levin
2020-08-24 16:35 ` [PATCH AUTOSEL 5.7 16/54] drm/amd/powerplay: correct Vega20 cached smu feature state Sasha Levin
2020-08-24 16:35   ` Sasha Levin
2020-08-24 16:35   ` Sasha Levin
2020-08-24 16:35 ` [PATCH AUTOSEL 5.7 17/54] drm/amd/powerplay: correct UVD/VCE PG state on custom pptable uploading Sasha Levin
2020-08-24 16:35   ` Sasha Levin
2020-08-24 16:35   ` Sasha Levin
2020-08-24 16:35 ` Sasha Levin [this message]
2020-08-24 16:35   ` [PATCH AUTOSEL 5.7 18/54] drm/amd/display: Fix LFC multiplier changing erratically Sasha Levin
2020-08-24 16:35   ` Sasha Levin
2020-08-24 16:35 ` [PATCH AUTOSEL 5.7 19/54] drm/amd/display: Switch to immediate mode for updating infopackets Sasha Levin
2020-08-24 16:35   ` Sasha Levin
2020-08-24 16:35   ` Sasha Levin
2020-08-24 16:35 ` [PATCH AUTOSEL 5.7 20/54] selftests/bpf: Fix segmentation fault in test_progs Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 21/54] libbpf: Handle GCC built-in types for Arm NEON Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 22/54] netfilter: avoid ipv6 -> nf_defrag_ipv6 module dependency Sasha Levin
2020-08-24 16:36   ` [Bridge] " Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 23/54] libbpf: Prevent overriding errno when logging errors Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 24/54] selftests/bpf: Fix btf_dump test cases on 32-bit arches Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 25/54] selftests/bpf: Correct various core_reloc 64-bit assumptions Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 26/54] can: j1939: transport: j1939_xtp_rx_dat_one(): compare own packets to detect corruptions Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 27/54] drivers/net/wan/hdlc_x25: Added needed_headroom and a skb->len check Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 28/54] ALSA: hda/realtek: Add model alc298-samsung-headphone Sasha Levin
2020-08-24 16:36   ` Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 29/54] s390/cio: add cond_resched() in the slow_eval_known_fn() loop Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 30/54] ASoC: wm8994: Avoid attempts to read unreadable registers Sasha Levin
2020-08-24 16:36   ` Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 31/54] ALSA: usb-audio: ignore broken processing/extension unit Sasha Levin
2020-08-24 16:36   ` Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 32/54] selftests: disable rp_filter for icmp_redirect.sh Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 33/54] scsi: fcoe: Fix I/O path allocation Sasha Levin
2020-08-24 16:36   ` [Intel-wired-lan] " Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 34/54] scsi: ufs: Fix possible infinite loop in ufshcd_hold Sasha Levin
2020-08-24 16:36   ` Sasha Levin
2020-08-24 16:36   ` Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 35/54] scsi: ufs: Improve interrupt handling for shared interrupts Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 36/54] scsi: ufs: Clean up completed request without interrupt notification Sasha Levin
2020-08-24 16:36   ` Sasha Levin
2020-08-24 16:36   ` Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 37/54] scsi: qla2xxx: Flush all sessions on zone disable Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 38/54] scsi: qla2xxx: Flush I/O " Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 39/54] scsi: qla2xxx: Indicate correct supported speeds for Mezz card Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 40/54] scsi: qla2xxx: Fix login timeout Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 41/54] scsi: qla2xxx: Check if FW supports MQ before enabling Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 42/54] scsi: qla2xxx: Fix null pointer access during disconnect from subsystem Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 43/54] Revert "scsi: qla2xxx: Fix crash on qla2x00_mailbox_command" Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 44/54] macvlan: validate setting of multiple remote source MAC addresses Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 45/54] net: gianfar: Add of_node_put() before goto statement Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 46/54] drm/amdgpu: disable gfxoff for navy_flounder Sasha Levin
2020-08-24 16:36   ` Sasha Levin
2020-08-24 16:36   ` Sasha Levin
2020-08-24 18:24   ` Alex Deucher
2020-08-24 18:24     ` Alex Deucher
2020-08-24 18:24     ` Alex Deucher
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 47/54] drm/amdgpu: fix NULL pointer access issue when unloading driver Sasha Levin
2020-08-24 16:36   ` Sasha Levin
2020-08-24 16:36   ` Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 48/54] drm/amdkfd: fix the wrong sdma instance query for renoir Sasha Levin
2020-08-24 16:36   ` Sasha Levin
2020-08-24 16:36   ` Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 49/54] Revert "drm/amdgpu: disable gfxoff for navy_flounder" Sasha Levin
2020-08-24 16:36   ` Sasha Levin
2020-08-24 16:36   ` Sasha Levin
2020-08-24 18:24   ` Alex Deucher
2020-08-24 18:24     ` Alex Deucher
2020-08-24 18:24     ` Alex Deucher
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 50/54] powerpc/perf: Fix soft lockups due to missed interrupt accounting Sasha Levin
2020-08-24 16:36   ` Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 51/54] libbpf: Fix map index used in error message Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 52/54] bpf: selftests: global_funcs: Check err_str before strstr Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 53/54] arm64: Move handling of erratum 1418040 into C code Sasha Levin
2020-08-24 16:36   ` Sasha Levin
2020-08-24 16:36 ` [PATCH AUTOSEL 5.7 54/54] arm64: Allow booting of late CPUs affected by erratum 1418040 Sasha Levin
2020-08-24 16:36   ` Sasha Levin

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=20200824163634.606093-18-sashal@kernel.org \
    --to=sashal@kernel.org \
    --cc=Anthony.Koo@amd.com \
    --cc=Aric.Cyr@amd.com \
    --cc=alexander.deucher@amd.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=qingqing.zhuo@amd.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 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.