Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: More amd64 drmkms radeon



Taylor R Campbell wrote:
>   Date: Thu, 14 Aug 2014 00:29:08 +0100 (BST)
>   From: Robert Swindells <rjs%fdy2.co.uk@localhost>
>
>   I'm seeing basically the same thing with an RV280 on i386, I don't
>   have a crash dump as it goes into a recursive panic but was able to
>   capture a boot trace with a serial console.
>
>   I was able to add a bit of debug before the call to bus_dmamap_load_raw()
>   to confirm that the arguments looked correctly aligned.
>
>Is this by any chance on a machine with AGP?  If so, I just checked in
>a change (ttm_agp_backend.c rev. 1.2) which may fix it.

Mine was on a machine with AGP, your change does fix the panic and it
boots to multiuser now.

X fails to start though with:

[    64.826] (II) AIGLX: Loaded and initialized 
/usr/X11R7/lib/modules/dri/r200_dri.so
[    64.826] (II) GLX: Initialized DRI2 GL provider for screen 0
[    64.848] (II) RADEON(0): Setting screen physical size to 480 x 270
[    66.187] Segmentation fault at address 0x0

I can try debugging this and/or send the logs.

>   I don't get this error with an RV710 on amd64, it boots fully but Xorg
>   fails with an error from somewhere in ttm/uvm.
>
>What's the error?  Do you have dmesg output or Xorg.0.log?

The error is ENODEV (19) returned from the call to mmap(2) from bo_map()
in xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c.

The server is trying to allocate 16384 bytes for the cursor, the drm
ioctl just before the mmap() returns 0x100000000 as the address to use.

Adding some printfs to the kernel it doesn't look to be calling into
the drm code from the mmap() syscall.

Robert Swindells


Home | Main Index | Thread Index | Old Index