[Mesa-dev] No luck with tstellar/llvm on HD4890

Tom Stellard tom at stellard.net
Mon Nov 5 12:38:24 PST 2012


On Mon, Nov 05, 2012 at 08:17:03PM +0000, Andy Furniss wrote:
> Maybe I am messing up somewhere, but I was previously OK with llvm 3.1.
> 
> 32 bit old LFS setup with a 4890 card.
> 
> Now I need to use git tstellar/llvm with
> --enable-experimental-targets=AMDGPU.
> 
> On head I get a gpu lock with anything gl, this from gears -
> 
> radeon 0000:01:00.0: GPU lockup CP stall for more than 10000msec
> radeon 0000:01:00.0: GPU lockup (waiting for 0x0000000000000662 last
> fence id 0x000000000000065f)
> [drm:r600_ib_test] *ERROR* radeon: fence wait failed (-35).
> [drm:radeon_ib_ring_tests] *ERROR* radeon: failed testing IB on GFX
> ring (-35).
> radeon 0000:01:00.0: ib ring test failed (-35).
> [drm] Disabling audio support
> radeon 0000:01:00.0: GPU softreset
> radeon 0000:01:00.0:   R_008010_GRBM_STATUS=0xE7732028
> radeon 0000:01:00.0:   R_008014_GRBM_STATUS2=0x00FF0F02
> radeon 0000:01:00.0:   R_000E50_SRBM_STATUS=0x200000C0
> radeon 0000:01:00.0:   R_008674_CP_STALLED_STAT1 = 0x00000000
> radeon 0000:01:00.0:   R_008678_CP_STALLED_STAT2 = 0x00010802
> radeon 0000:01:00.0:   R_00867C_CP_BUSY_STAT     = 0x00028180
> radeon 0000:01:00.0:   R_008680_CP_STAT          = 0x80038647
> radeon 0000:01:00.0:   R_008020_GRBM_SOFT_RESET=0x00007FEE
> radeon 0000:01:00.0: R_008020_GRBM_SOFT_RESET=0x00000001
> radeon 0000:01:00.0:   R_008010_GRBM_STATUS=0x00003028
> radeon 0000:01:00.0:   R_008014_GRBM_STATUS2=0x00000002
> radeon 0000:01:00.0:   R_000E50_SRBM_STATUS=0x200000C0
> radeon 0000:01:00.0:   R_008674_CP_STALLED_STAT1 = 0x00000000
> radeon 0000:01:00.0:   R_008678_CP_STALLED_STAT2 = 0x00000000
> radeon 0000:01:00.0:   R_00867C_CP_BUSY_STAT     = 0x00000000
> radeon 0000:01:00.0:   R_008680_CP_STAT          = 0x00000000
> radeon 0000:01:00.0: GPU reset succeeded, trying to resume
> [drm] probing gen 2 caps for device 1022:9603 = 2/0
> [drm] enabling PCIE gen 2 link speeds, disable with radeon.pcie_gen2=0
> [drm] PCIE GART of 512M enabled (table at 0x0000000000040000).
> radeon 0000:01:00.0: WB enabled
> radeon 0000:01:00.0: fence driver on ring 0 use gpu addr
> 0x0000000040000c00 and cpu addr 0xff950c00
> [drm] ring test on 0 succeeded in 1 usecs
> 
> 
> So I tried half a dozen random resets to slightly older llvm
> commits, rebuilding mesa after each, but either got a mesa build
> error or this.
> 

I think you will have better luck narrowing down the issue if you bisect
Mesa, rather than LLVM.  Old versions of Mesa are likely to work with
new versions of tstellar/llvm, but new versions of Mesa won't work with
old versions of tstellar/llvm.

Any commit of Mesa newer than
4cc530f452436a5304a628d1428ed7f07247a175
should build correctly with the latest tstellar/llvm code.

Sorry for the inconvenience.  We are kind of in no man's land right now
while we wait for the code to be reviewed and hopefully approved for
inclusion into the main LLVM tree.  I hoping we'll be able to have this
taken care of prior to the LLVM 3.2 release.

-Tom

> bash-3.2$ ./gears
> Not Implemented
> UNREACHABLE executed at
> /mnt/sdb1/Src/ts-llvm/llvm/include/llvm/Target/TargetLowering.h:1365!
> Stack dump:
> 0.      Running pass 'Function Pass Manager' on module 'tgsi'.
> 1.      Running pass 'AMDGPU DAG->DAG Pattern Instruction Selection'
> on function '@main'
> 
> radeon_llvm_emit.cpp: In function 'unsigned int
> radeon_llvm_compile(LLVMOpaqueModule*, unsigned char**, unsigned
> int*, const char*, unsigned int)':
> radeon_llvm_emit.cpp:129: error: 'class llvm::TargetMachine' has no
> member named 'getDataLayout'
> make[4]: *** [radeon_llvm_emit.o] Error 1
> 
> I guess there is a working place somewhere - has anyone else with a
> rv770 type card got this working?
> 
> Everything is OK with R600_LLVM=0.
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list