Commit 9d0223d5 authored by Alex Deucher's avatar Alex Deucher

drm/radeon/si: print full CS when we hit a packet 0

We should never have a packet 0 in the command stream.
Dump the full command stream to help debug.

bug:
https://bugs.freedesktop.org/show_bug.cgi?id=84500Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent d7952ddf
...@@ -4684,7 +4684,7 @@ static int si_vm_packet3_compute_check(struct radeon_device *rdev, ...@@ -4684,7 +4684,7 @@ static int si_vm_packet3_compute_check(struct radeon_device *rdev,
int si_ib_parse(struct radeon_device *rdev, struct radeon_ib *ib) int si_ib_parse(struct radeon_device *rdev, struct radeon_ib *ib)
{ {
int ret = 0; int ret = 0;
u32 idx = 0; u32 idx = 0, i;
struct radeon_cs_packet pkt; struct radeon_cs_packet pkt;
do { do {
...@@ -4695,6 +4695,12 @@ int si_ib_parse(struct radeon_device *rdev, struct radeon_ib *ib) ...@@ -4695,6 +4695,12 @@ int si_ib_parse(struct radeon_device *rdev, struct radeon_ib *ib)
switch (pkt.type) { switch (pkt.type) {
case RADEON_PACKET_TYPE0: case RADEON_PACKET_TYPE0:
dev_err(rdev->dev, "Packet0 not allowed!\n"); dev_err(rdev->dev, "Packet0 not allowed!\n");
for (i = 0; i < ib->length_dw; i++) {
if (i == idx)
printk("\t0x%08x <---\n", ib->ptr[i]);
else
printk("\t0x%08x\n", ib->ptr[i]);
}
ret = -EINVAL; ret = -EINVAL;
break; break;
case RADEON_PACKET_TYPE2: case RADEON_PACKET_TYPE2:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment