[PATCH OLK-5.10 V1] drm/amd/display: Check link_index before accessing dc->links[]

From: Alex Hung <alex.hung@amd.com> mainline inclusion from mainline-v6.11 commit 8aa2864044b9d13e95fe224f32e808afbf79ecdf category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAU9QT CVE: CVE-2024-46813 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?i... -------------------------------- [WHY & HOW] dc->links[] has max size of MAX_LINKS and NULL is return when trying to access with out-of-bound index. This fixes 3 OVERRUN and 1 RESOURCE_LEAK issues reported by Coverity. Reviewed-by: Harry Wentland <harry.wentland@amd.com> Acked-by: Tom Chung <chiahsuan.chung@amd.com> Signed-off-by: Alex Hung <alex.hung@amd.com> Tested-by: Daniel Wheeler <daniel.wheeler@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Conflicts: drivers/gpu/drm/amd/display/dc/core/dc_link_exports.c drivers/gpu/drm/amd/display/dc/dc_link.h [dc_get_link_at_index is in dc_link.h, not moved to dc_link_exports.c. MAX_LINKS not defined, use MAX_PIPES * 2 + 2.] Signed-off-by: Zhao Wenhui <zhaowenhui8@huawei.com> --- drivers/gpu/drm/amd/display/dc/dc_link.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm/amd/display/dc/dc_link.h b/drivers/gpu/drm/amd/display/dc/dc_link.h index 266b93a705d5..a00882f9cf60 100644 --- a/drivers/gpu/drm/amd/display/dc/dc_link.h +++ b/drivers/gpu/drm/amd/display/dc/dc_link.h @@ -177,6 +177,9 @@ const struct dc_link_status *dc_link_get_status(const struct dc_link *dc_link); */ static inline struct dc_link *dc_get_link_at_index(struct dc *dc, uint32_t link_index) { + if (link_index >= MAX_PIPES * 2 + 2) + return NULL; + return dc->links[link_index]; } -- 2.34.1

From: Alex Hung <alex.hung@amd.com> mainline inclusion from mainline-v6.11 commit 8aa2864044b9d13e95fe224f32e808afbf79ecdf category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAU9QT CVE: CVE-2024-46813 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?i... -------------------------------- [WHY & HOW] dc->links[] has max size of MAX_LINKS and NULL is return when trying to access with out-of-bound index. This fixes 3 OVERRUN and 1 RESOURCE_LEAK issues reported by Coverity. Reviewed-by: Harry Wentland <harry.wentland@amd.com> Acked-by: Tom Chung <chiahsuan.chung@amd.com> Signed-off-by: Alex Hung <alex.hung@amd.com> Tested-by: Daniel Wheeler <daniel.wheeler@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Conflicts: amd/display/dc/core/dc_link_exports.c [MAX_LINKS not defined, use MAX_PIPES * 2 + 2.] Signed-off-by: Zicheng Qu <quzicheng@huawei.com> --- drivers/gpu/drm/amd/display/dc/core/dc_link_exports.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link_exports.c b/drivers/gpu/drm/amd/display/dc/core/dc_link_exports.c index f365773d5714..4d7d4d5fc070 100644 --- a/drivers/gpu/drm/amd/display/dc/core/dc_link_exports.c +++ b/drivers/gpu/drm/amd/display/dc/core/dc_link_exports.c @@ -37,6 +37,9 @@ #include "dce/dce_i2c.h" struct dc_link *dc_get_link_at_index(struct dc *dc, uint32_t link_index) { + if (link_index >= MAX_PIPES * 2 + 2) + return NULL; + return dc->links[link_index]; } -- 2.34.1

反馈: 您发送到kernel@openeuler.org的补丁/补丁集,已成功转换为PR! PR链接地址: https://gitee.com/openeuler/kernel/pulls/13897 邮件列表地址:https://mailweb.openeuler.org/hyperkitty/list/kernel@openeuler.org/message/L... FeedBack: The patch(es) which you have sent to kernel@openeuler.org mailing list has been converted to a pull request successfully! Pull request link: https://gitee.com/openeuler/kernel/pulls/13897 Mailing list address: https://mailweb.openeuler.org/hyperkitty/list/kernel@openeuler.org/message/L...

From: Zicheng Qu <quzicheng@huawei.com> mainline inclusion from mainline-v6.11 commit 8aa2864044b9d13e95fe224f32e808afbf79ecdf category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAU9QT CVE: CVE-2024-46813 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?i... -------------------------------- [WHY & HOW] dc->links[] has max size of MAX_LINKS and NULL is return when trying to access with out-of-bound index. This fixes 3 OVERRUN and 1 RESOURCE_LEAK issues reported by Coverity. Reviewed-by: Harry Wentland <harry.wentland@amd.com> Acked-by: Tom Chung <chiahsuan.chung@amd.com> Signed-off-by: Alex Hung <alex.hung@amd.com> Tested-by: Daniel Wheeler <daniel.wheeler@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Conflicts: drivers/gpu/drm/amd/display/dc/core/dc_link_exports.c drivers/gpu/drm/amd/display/dc/dc_link.h [dc_get_link_at_index is in dc_link.h, not moved to dc_link_exports.c. MAX_LINKS not defined, use MAX_PIPES * 2 + 2.] Signed-off-by: Zicheng Qu <quzicheng@huawei.com> --- drivers/gpu/drm/amd/display/dc/dc_link.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm/amd/display/dc/dc_link.h b/drivers/gpu/drm/amd/display/dc/dc_link.h index 266b93a705d5..1c110a7e159e 100644 --- a/drivers/gpu/drm/amd/display/dc/dc_link.h +++ b/drivers/gpu/drm/amd/display/dc/dc_link.h @@ -177,6 +177,9 @@ const struct dc_link_status *dc_link_get_status(const struct dc_link *dc_link); */ static inline struct dc_link *dc_get_link_at_index(struct dc *dc, uint32_t link_index) { + if (link_index >= MAX_PIPES * 2 + 2) + return NULL; + return dc->links[link_index]; } -- 2.34.1

反馈: 您发送到kernel@openeuler.org的补丁/补丁集,已成功转换为PR! PR链接地址: https://gitee.com/openeuler/kernel/pulls/13898 邮件列表地址:https://mailweb.openeuler.org/hyperkitty/list/kernel@openeuler.org/message/G... FeedBack: The patch(es) which you have sent to kernel@openeuler.org mailing list has been converted to a pull request successfully! Pull request link: https://gitee.com/openeuler/kernel/pulls/13898 Mailing list address: https://mailweb.openeuler.org/hyperkitty/list/kernel@openeuler.org/message/G...
participants (2)
-
patchwork bot
-
quzicheng