tree: git://anongit.freedesktop.org/drm-intel drm-intel-next head: b29854ec3b9ca6512a783e2153465f27a777a654 commit: 989cf9a93892409cf8e84c30c0faaa522ac83807 [3/4] drm/i915/hdcp: Add DP HDCP2.2 timeout to read entire msg config: i386-randconfig-m031-20210401 (attached as .config) compiler: gcc-9 (Debian 9.3.0-22) 9.3.0 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@xxxxxxxxx> Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> smatch warnings: drivers/gpu/drm/i915/display/intel_dp_hdcp.c:582 intel_dp_hdcp2_read_msg() error: uninitialized symbol 'msg_end'. vim +/msg_end +582 drivers/gpu/drm/i915/display/intel_dp_hdcp.c d079b7e4b6389e Sean Paul 2020-08-18 526 static d079b7e4b6389e Sean Paul 2020-08-18 527 int intel_dp_hdcp2_read_msg(struct intel_digital_port *dig_port, d079b7e4b6389e Sean Paul 2020-08-18 528 u8 msg_id, void *buf, size_t size) d079b7e4b6389e Sean Paul 2020-08-18 529 { d079b7e4b6389e Sean Paul 2020-08-18 530 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); d079b7e4b6389e Sean Paul 2020-08-18 531 unsigned int offset; d079b7e4b6389e Sean Paul 2020-08-18 532 u8 *byte = buf; d079b7e4b6389e Sean Paul 2020-08-18 533 ssize_t ret, bytes_to_recv, len; d079b7e4b6389e Sean Paul 2020-08-18 534 const struct hdcp2_dp_msg_data *hdcp2_msg_data; 989cf9a9389240 Anshuman Gupta 2021-03-24 535 ktime_t msg_end; ^^^^^^^^^^^^^^^^ 989cf9a9389240 Anshuman Gupta 2021-03-24 536 bool msg_expired; d079b7e4b6389e Sean Paul 2020-08-18 537 d079b7e4b6389e Sean Paul 2020-08-18 538 hdcp2_msg_data = get_hdcp2_dp_msg_data(msg_id); d079b7e4b6389e Sean Paul 2020-08-18 539 if (!hdcp2_msg_data) d079b7e4b6389e Sean Paul 2020-08-18 540 return -EINVAL; d079b7e4b6389e Sean Paul 2020-08-18 541 offset = hdcp2_msg_data->offset; d079b7e4b6389e Sean Paul 2020-08-18 542 d079b7e4b6389e Sean Paul 2020-08-18 543 ret = intel_dp_hdcp2_wait_for_msg(dig_port, hdcp2_msg_data); d079b7e4b6389e Sean Paul 2020-08-18 544 if (ret < 0) d079b7e4b6389e Sean Paul 2020-08-18 545 return ret; d079b7e4b6389e Sean Paul 2020-08-18 546 d079b7e4b6389e Sean Paul 2020-08-18 547 if (msg_id == HDCP_2_2_REP_SEND_RECVID_LIST) { d079b7e4b6389e Sean Paul 2020-08-18 548 ret = get_receiver_id_list_size(dig_port); d079b7e4b6389e Sean Paul 2020-08-18 549 if (ret < 0) d079b7e4b6389e Sean Paul 2020-08-18 550 return ret; d079b7e4b6389e Sean Paul 2020-08-18 551 d079b7e4b6389e Sean Paul 2020-08-18 552 size = ret; d079b7e4b6389e Sean Paul 2020-08-18 553 } d079b7e4b6389e Sean Paul 2020-08-18 554 bytes_to_recv = size - 1; ^^^^^^^^^^^^^^^^^^^^^^^^ Is it possible to for "size" to be 1? d079b7e4b6389e Sean Paul 2020-08-18 555 d079b7e4b6389e Sean Paul 2020-08-18 556 /* DP adaptation msgs has no msg_id */ d079b7e4b6389e Sean Paul 2020-08-18 557 byte++; d079b7e4b6389e Sean Paul 2020-08-18 558 d079b7e4b6389e Sean Paul 2020-08-18 559 while (bytes_to_recv) { In that case, we would never enter this loop. d079b7e4b6389e Sean Paul 2020-08-18 560 len = bytes_to_recv > DP_AUX_MAX_PAYLOAD_BYTES ? d079b7e4b6389e Sean Paul 2020-08-18 561 DP_AUX_MAX_PAYLOAD_BYTES : bytes_to_recv; d079b7e4b6389e Sean Paul 2020-08-18 562 989cf9a9389240 Anshuman Gupta 2021-03-24 563 /* Entire msg read timeout since initiate of msg read */ 989cf9a9389240 Anshuman Gupta 2021-03-24 564 if (bytes_to_recv == size - 1 && hdcp2_msg_data->msg_read_timeout > 0) 989cf9a9389240 Anshuman Gupta 2021-03-24 565 msg_end = ktime_add_ms(ktime_get_raw(), 989cf9a9389240 Anshuman Gupta 2021-03-24 566 hdcp2_msg_data->msg_read_timeout); 989cf9a9389240 Anshuman Gupta 2021-03-24 567 d079b7e4b6389e Sean Paul 2020-08-18 568 ret = drm_dp_dpcd_read(&dig_port->dp.aux, offset, d079b7e4b6389e Sean Paul 2020-08-18 569 (void *)byte, len); d079b7e4b6389e Sean Paul 2020-08-18 570 if (ret < 0) { d079b7e4b6389e Sean Paul 2020-08-18 571 drm_dbg_kms(&i915->drm, "msg_id %d, ret %zd\n", d079b7e4b6389e Sean Paul 2020-08-18 572 msg_id, ret); d079b7e4b6389e Sean Paul 2020-08-18 573 return ret; d079b7e4b6389e Sean Paul 2020-08-18 574 } d079b7e4b6389e Sean Paul 2020-08-18 575 d079b7e4b6389e Sean Paul 2020-08-18 576 bytes_to_recv -= ret; d079b7e4b6389e Sean Paul 2020-08-18 577 byte += ret; d079b7e4b6389e Sean Paul 2020-08-18 578 offset += ret; d079b7e4b6389e Sean Paul 2020-08-18 579 } 989cf9a9389240 Anshuman Gupta 2021-03-24 580 989cf9a9389240 Anshuman Gupta 2021-03-24 581 if (hdcp2_msg_data->msg_read_timeout > 0) { 989cf9a9389240 Anshuman Gupta 2021-03-24 @582 msg_expired = ktime_after(ktime_get_raw(), msg_end); 989cf9a9389240 Anshuman Gupta 2021-03-24 583 if (msg_expired) { 989cf9a9389240 Anshuman Gupta 2021-03-24 584 drm_dbg_kms(&i915->drm, "msg_id %d, entire msg read timeout(mSec): %d\n", 989cf9a9389240 Anshuman Gupta 2021-03-24 585 msg_id, hdcp2_msg_data->msg_read_timeout); 989cf9a9389240 Anshuman Gupta 2021-03-24 586 return -ETIMEDOUT; 989cf9a9389240 Anshuman Gupta 2021-03-24 587 } 989cf9a9389240 Anshuman Gupta 2021-03-24 588 } 989cf9a9389240 Anshuman Gupta 2021-03-24 589 d079b7e4b6389e Sean Paul 2020-08-18 590 byte = buf; d079b7e4b6389e Sean Paul 2020-08-18 591 *byte = msg_id; d079b7e4b6389e Sean Paul 2020-08-18 592 d079b7e4b6389e Sean Paul 2020-08-18 593 return size; d079b7e4b6389e Sean Paul 2020-08-18 594 } --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx
Attachment:
.config.gz
Description: application/gzip
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel