Message ID | 20181219122708.4586-2-kraxel@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/virtio: ttm improvements, minor cleanups. | expand |
On 12/19/18 2:26 PM, Gerd Hoffmann wrote: > If we got an error response code from the host, print it to the log. > > Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com> > --- > drivers/gpu/drm/virtio/virtgpu_vq.c | 12 ++++++++++-- > 1 file changed, 10 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/virtio/virtgpu_vq.c b/drivers/gpu/drm/virtio/virtgpu_vq.c > index e27c4aedb8..6bc2008b0d 100644 > --- a/drivers/gpu/drm/virtio/virtgpu_vq.c > +++ b/drivers/gpu/drm/virtio/virtgpu_vq.c > @@ -192,8 +192,16 @@ void virtio_gpu_dequeue_ctrl_func(struct work_struct *work) > > list_for_each_entry_safe(entry, tmp, &reclaim_list, list) { > resp = (struct virtio_gpu_ctrl_hdr *)entry->resp_buf; > - if (resp->type != cpu_to_le32(VIRTIO_GPU_RESP_OK_NODATA)) > - DRM_DEBUG("response 0x%x\n", le32_to_cpu(resp->type)); > + if (resp->type != cpu_to_le32(VIRTIO_GPU_RESP_OK_NODATA)) { > + if (resp->type >= cpu_to_le32(VIRTIO_GPU_RESP_ERR_UNSPEC)) { > + struct virtio_gpu_ctrl_hdr *cmd; > + cmd = (struct virtio_gpu_ctrl_hdr *)entry->buf; > + DRM_ERROR("response 0x%x (command 0x%x)\n", > + le32_to_cpu(resp->type), > + le32_to_cpu(cmd->type)); > + } else > + DRM_DEBUG("response 0x%x\n", le32_to_cpu(resp->type)); > + } > if (resp->flags & cpu_to_le32(VIRTIO_GPU_FLAG_FENCE)) { > u64 f = le64_to_cpu(resp->fence_id); >
diff --git a/drivers/gpu/drm/virtio/virtgpu_vq.c b/drivers/gpu/drm/virtio/virtgpu_vq.c index e27c4aedb8..6bc2008b0d 100644 --- a/drivers/gpu/drm/virtio/virtgpu_vq.c +++ b/drivers/gpu/drm/virtio/virtgpu_vq.c @@ -192,8 +192,16 @@ void virtio_gpu_dequeue_ctrl_func(struct work_struct *work) list_for_each_entry_safe(entry, tmp, &reclaim_list, list) { resp = (struct virtio_gpu_ctrl_hdr *)entry->resp_buf; - if (resp->type != cpu_to_le32(VIRTIO_GPU_RESP_OK_NODATA)) - DRM_DEBUG("response 0x%x\n", le32_to_cpu(resp->type)); + if (resp->type != cpu_to_le32(VIRTIO_GPU_RESP_OK_NODATA)) { + if (resp->type >= cpu_to_le32(VIRTIO_GPU_RESP_ERR_UNSPEC)) { + struct virtio_gpu_ctrl_hdr *cmd; + cmd = (struct virtio_gpu_ctrl_hdr *)entry->buf; + DRM_ERROR("response 0x%x (command 0x%x)\n", + le32_to_cpu(resp->type), + le32_to_cpu(cmd->type)); + } else + DRM_DEBUG("response 0x%x\n", le32_to_cpu(resp->type)); + } if (resp->flags & cpu_to_le32(VIRTIO_GPU_FLAG_FENCE)) { u64 f = le64_to_cpu(resp->fence_id);
If we got an error response code from the host, print it to the log. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> --- drivers/gpu/drm/virtio/virtgpu_vq.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-)