Re: [PATCH 6.1] drm/amd/display: Check null-initialized variables

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



[ Sasha's backport helper bot ]

Hi,

The upstream commit SHA1 provided is correct: 367cd9ceba1933b63bc1d87d967baf6d9fd241d2

WARNING: Author mismatch between patch and upstream commit:
Backport author: Xiangyu Chen <xiangyu.chen@xxxxxxxxxxxxxxxxx>
Commit author: Alex Hung <alex.hung@xxxxxxx>


Status in newer kernel trees:
6.12.y | Present (exact SHA1)
6.11.y | Present (different SHA1: 115b1a3b0944)
6.6.y | Not found
6.1.y | Not found

Note: The patch differs from the upstream commit:
---
--- -	2024-11-26 08:11:03.228502071 -0500
+++ /tmp/tmp.yx1D4yo5Xl	2024-11-26 08:11:03.222888690 -0500
@@ -1,3 +1,5 @@
+[ Upstream commit 367cd9ceba1933b63bc1d87d967baf6d9fd241d2 ]
+
 [WHAT & HOW]
 drr_timing and subvp_pipe are initialized to null and they are not
 always assigned new values. It is necessary to check for null before
@@ -11,15 +13,17 @@
 Signed-off-by: Alex Hung <alex.hung@xxxxxxx>
 Tested-by: Daniel Wheeler <daniel.wheeler@xxxxxxx>
 Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
+[Xiangyu: BP to fix CVE: CVE-2024-49898, Minor conflict resolution]
+Signed-off-by: Xiangyu Chen <xiangyu.chen@xxxxxxxxxxxxx>
 ---
  drivers/gpu/drm/amd/display/dc/dml/dcn32/dcn32_fpu.c | 7 ++++---
  1 file changed, 4 insertions(+), 3 deletions(-)
 
 diff --git a/drivers/gpu/drm/amd/display/dc/dml/dcn32/dcn32_fpu.c b/drivers/gpu/drm/amd/display/dc/dml/dcn32/dcn32_fpu.c
-index 9d399c4ce957d..4cb0227bdd270 100644
+index 85e0d1c2a908..9d8917f72d18 100644
 --- a/drivers/gpu/drm/amd/display/dc/dml/dcn32/dcn32_fpu.c
 +++ b/drivers/gpu/drm/amd/display/dc/dml/dcn32/dcn32_fpu.c
-@@ -871,8 +871,9 @@ static bool subvp_drr_schedulable(struct dc *dc, struct dc_state *context)
+@@ -900,8 +900,9 @@ static bool subvp_drr_schedulable(struct dc *dc, struct dc_state *context, struc
  	 * for VBLANK: (VACTIVE region of the SubVP pipe can fit the MALL prefetch, VBLANK frame time,
  	 * and the max of (VBLANK blanking time, MALL region)).
  	 */
@@ -31,12 +35,15 @@
  		schedulable = true;
  
  	return schedulable;
-@@ -937,7 +938,7 @@ static bool subvp_vblank_schedulable(struct dc *dc, struct dc_state *context)
- 		if (!subvp_pipe && pipe_mall_type == SUBVP_MAIN)
- 			subvp_pipe = pipe;
- 	}
--	if (found) {
-+	if (found && subvp_pipe) {
- 		phantom_stream = dc_state_get_paired_subvp_stream(context, subvp_pipe->stream);
+@@ -966,7 +967,7 @@ static bool subvp_vblank_schedulable(struct dc *dc, struct dc_state *context)
+ 	if (found && context->res_ctx.pipe_ctx[vblank_index].stream->ignore_msa_timing_param) {
+ 		// SUBVP + DRR case
+ 		schedulable = subvp_drr_schedulable(dc, context, &context->res_ctx.pipe_ctx[vblank_index]);
+-	} else if (found) {
++	} else if (found && subvp_pipe) {
  		main_timing = &subvp_pipe->stream->timing;
- 		phantom_timing = &phantom_stream->timing;
+ 		phantom_timing = &subvp_pipe->stream->mall_stream_config.paired_stream->timing;
+ 		vblank_timing = &context->res_ctx.pipe_ctx[vblank_index].stream->timing;
+-- 
+2.43.0
+
---

Results of testing on various branches:

| Branch                    | Patch Apply | Build Test |
|---------------------------|-------------|------------|
| stable/linux-6.1.y        |  Success    |  Success   |




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux