Loading drivers/media/platform/msm/cvp/cvp_hfi.c +11 −0 Original line number Diff line number Diff line Loading @@ -3190,6 +3190,14 @@ static void **get_session_id(struct msm_cvp_cb_info *info) return session_id; } static void print_msg_hdr(struct hfi_msg_session_hdr *hdr) { dprintk(CVP_DBG, "HFI MSG received: %x %x %x %x %x %x %x\n", hdr->size, hdr->packet_type, hdr->session_id, hdr->client_data.transaction_id, hdr->client_data.data1, hdr->client_data.data2, hdr->error_type); } static int __response_handler(struct venus_hfi_device *device) { struct msm_cvp_cb_info *packets; Loading Loading @@ -3234,8 +3242,11 @@ static int __response_handler(struct venus_hfi_device *device) while (!__iface_msgq_read(device, raw_packet)) { void **session_id = NULL; struct msm_cvp_cb_info *info = &packets[packet_count++]; struct hfi_msg_session_hdr *hdr = (struct hfi_msg_session_hdr *)raw_packet; int rc = 0; print_msg_hdr(hdr); rc = cvp_hfi_process_msg_packet(device->device_id, (struct cvp_hal_msg_pkt_hdr *)raw_packet, info); if (rc) { Loading drivers/media/platform/msm/cvp/msm_v4l2_private.c +20 −4 Original line number Diff line number Diff line Loading @@ -149,6 +149,24 @@ static void _set_deprecate_bitmask(struct cvp_kmd_arg *kp, } } static void print_hfi_short(struct cvp_kmd_arg __user *up) { struct cvp_kmd_hfi_packet *pkt; unsigned int words[5]; pkt = &up->data.hfi_pkt; if (get_user(words[0], &up->type) || get_user(words[1], &up->buf_offset) || get_user(words[2], &up->buf_num) || get_user(words[3], &pkt->pkt_data[0]) || get_user(words[4], &pkt->pkt_data[1])) dprintk(CVP_ERR, "Failed to print ioctl cmd\n"); dprintk(CVP_DBG, "IOCTL cmd type %d, offset %d, num %d, pkt %d %d\n", words[0], words[1], words[2], words[3], words[4]); } static int convert_from_user(struct cvp_kmd_arg *kp, unsigned long arg, struct msm_cvp_inst *inst) Loading @@ -163,6 +181,8 @@ static int convert_from_user(struct cvp_kmd_arg *kp, return -EINVAL; } print_hfi_short(up); if (get_user(kp->type, &up->type)) return -EFAULT; Loading Loading @@ -267,8 +287,6 @@ static int convert_from_user(struct cvp_kmd_arg *kp, return -EFAULT; } dprintk(CVP_DBG, "system call cmd pkt: %d 0x%x\n", pkt_hdr.size, pkt_hdr.packet_type); rc = _copy_pkt_from_user(kp, up, (pkt_hdr.size >> 2)); break; } Loading @@ -280,8 +298,6 @@ static int convert_from_user(struct cvp_kmd_arg *kp, return -EFAULT; } dprintk(CVP_DBG, "system call cmd pkt: %d 0x%x\n", pkt_hdr.size, pkt_hdr.packet_type); rc = _copy_fence_pkt_from_user(kp, up, (pkt_hdr.size >> 2)); break; } Loading Loading
drivers/media/platform/msm/cvp/cvp_hfi.c +11 −0 Original line number Diff line number Diff line Loading @@ -3190,6 +3190,14 @@ static void **get_session_id(struct msm_cvp_cb_info *info) return session_id; } static void print_msg_hdr(struct hfi_msg_session_hdr *hdr) { dprintk(CVP_DBG, "HFI MSG received: %x %x %x %x %x %x %x\n", hdr->size, hdr->packet_type, hdr->session_id, hdr->client_data.transaction_id, hdr->client_data.data1, hdr->client_data.data2, hdr->error_type); } static int __response_handler(struct venus_hfi_device *device) { struct msm_cvp_cb_info *packets; Loading Loading @@ -3234,8 +3242,11 @@ static int __response_handler(struct venus_hfi_device *device) while (!__iface_msgq_read(device, raw_packet)) { void **session_id = NULL; struct msm_cvp_cb_info *info = &packets[packet_count++]; struct hfi_msg_session_hdr *hdr = (struct hfi_msg_session_hdr *)raw_packet; int rc = 0; print_msg_hdr(hdr); rc = cvp_hfi_process_msg_packet(device->device_id, (struct cvp_hal_msg_pkt_hdr *)raw_packet, info); if (rc) { Loading
drivers/media/platform/msm/cvp/msm_v4l2_private.c +20 −4 Original line number Diff line number Diff line Loading @@ -149,6 +149,24 @@ static void _set_deprecate_bitmask(struct cvp_kmd_arg *kp, } } static void print_hfi_short(struct cvp_kmd_arg __user *up) { struct cvp_kmd_hfi_packet *pkt; unsigned int words[5]; pkt = &up->data.hfi_pkt; if (get_user(words[0], &up->type) || get_user(words[1], &up->buf_offset) || get_user(words[2], &up->buf_num) || get_user(words[3], &pkt->pkt_data[0]) || get_user(words[4], &pkt->pkt_data[1])) dprintk(CVP_ERR, "Failed to print ioctl cmd\n"); dprintk(CVP_DBG, "IOCTL cmd type %d, offset %d, num %d, pkt %d %d\n", words[0], words[1], words[2], words[3], words[4]); } static int convert_from_user(struct cvp_kmd_arg *kp, unsigned long arg, struct msm_cvp_inst *inst) Loading @@ -163,6 +181,8 @@ static int convert_from_user(struct cvp_kmd_arg *kp, return -EINVAL; } print_hfi_short(up); if (get_user(kp->type, &up->type)) return -EFAULT; Loading Loading @@ -267,8 +287,6 @@ static int convert_from_user(struct cvp_kmd_arg *kp, return -EFAULT; } dprintk(CVP_DBG, "system call cmd pkt: %d 0x%x\n", pkt_hdr.size, pkt_hdr.packet_type); rc = _copy_pkt_from_user(kp, up, (pkt_hdr.size >> 2)); break; } Loading @@ -280,8 +298,6 @@ static int convert_from_user(struct cvp_kmd_arg *kp, return -EFAULT; } dprintk(CVP_DBG, "system call cmd pkt: %d 0x%x\n", pkt_hdr.size, pkt_hdr.packet_type); rc = _copy_fence_pkt_from_user(kp, up, (pkt_hdr.size >> 2)); break; } Loading