mirror of https://gitee.com/openkylin/linux.git
drm/dp_mst: Check crc4 value while building sideband message
Check that computed crc value is matching the one encoded in the message. Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com> Reviewed-by: Lyude Paul <lyude@redhat.com> Link: https://patchwork.freedesktop.org/patch/msgid/20200203121620.9002-1-benjamin.gaignard@st.com
This commit is contained in:
parent
cb897542c6
commit
d6b8bbca6b
|
@ -736,6 +736,10 @@ static bool drm_dp_sideband_msg_build(struct drm_dp_sideband_msg_rx *msg,
|
|||
if (msg->curchunk_idx >= msg->curchunk_len) {
|
||||
/* do CRC */
|
||||
crc4 = drm_dp_msg_data_crc4(msg->chunk, msg->curchunk_len - 1);
|
||||
if (crc4 != msg->chunk[msg->curchunk_len - 1])
|
||||
print_hex_dump(KERN_DEBUG, "wrong crc",
|
||||
DUMP_PREFIX_NONE, 16, 1,
|
||||
msg->chunk, msg->curchunk_len, false);
|
||||
/* copy chunk into bigger msg */
|
||||
memcpy(&msg->msg[msg->curlen], msg->chunk, msg->curchunk_len - 1);
|
||||
msg->curlen += msg->curchunk_len - 1;
|
||||
|
|
Loading…
Reference in New Issue