[Bug 83708] [vdpau,uvd] kernel oops, Unable to handle kernel paging request at virtual address

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Wed Sep 24 08:18:34 PDT 2014


https://bugs.freedesktop.org/show_bug.cgi?id=83708

--- Comment #15 from Jack <zduo006 at 163.com> ---
(In reply to comment #14)
> (In reply to comment #13)
> > This patch can solve the address problem.
> 
> writel() and readl() already convert to/from little endian. Does it work
> better if you remove cpu_to_le32() from all lines using those functions?
> 
> 
> > @@ -751,22 +748,12 @@
> >  	}
> >  
> >  	/* stitch together an UVD destroy msg */
> > -#if 0
> > -	msg[0] = cpu_to_le32(0x00000de4);
> > -	msg[1] = cpu_to_le32(0x00000002);
> > -	msg[2] = cpu_to_le32(handle);
> > -	msg[3] = cpu_to_le32(0x00000000);
> > -	for (i = 4; i < 1024; ++i)
> > -		msg[i] = cpu_to_le32(0x0);
> > -#endif
> > -#if 1
> >  	writel(cpu_to_le32(0x00000de4),&msg[1]);
> >          writel(cpu_to_le32(0x00000002),&msg[2]);
> >          writel(cpu_to_le32(handle),&msg[3]);
> >          writel(cpu_to_le32(0x00000000),&msg[4]);
> >          for (i = 4; i < 1024; ++i)
> >                  writel(cpu_to_le32(0x0),&msg[i]);
> > -#endif
> >  	radeon_bo_kunmap(bo);
> >  	radeon_bo_unreserve(bo);
> 
> Why are you enabling this code?

1. I do not add cpu_to_le32() first ,but when I trace the messages from
printk,the value of msg_type is reversed. Add, all is ok.
2. #if 0 ...#endif is the original code from kernel. #if 1 ...#endif is changed
code. is the same as 1. Must do cpu_to_le32 transfer

  By the way, u said writel() and readl() already convert to/from little
endian.
is based on the X86 arch implement?

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/dri-devel/attachments/20140924/ca81f200/attachment.html>


More information about the dri-devel mailing list